Qwen ロールプレイモデルは、仮想ソーシャルインタラクション、ゲームのノンプレイヤーキャラクター (NPC)、IP の再現、ハードウェア、おもちゃ、または車両システムとの統合など、パーソナライズされたチャットシナリオ向けに設計されています。他の Qwen モデルと比較して、キャラクター描写、トピックの進行、共感的な傾聴の能力が強化されています。
サポートされているモデル
シンガポールリージョン
Qwen ロールプレイモデルは、日本語シナリオでの擬人化されたキャラクターのロールプレイ向けに設計されています。キャラクターの指示に従い、トピックを進め、共感的に耳を傾け、パーソナライズされたキャラクターを深く描写することに優れています。このバージョンは、日本語のローカライズ、知識の理解と表現、キャラクター描写、プロットの進行、知能において大幅な最適化が施されています。
モデル | コンテキストウィンドウ | 最大入力 | 最大出力 | 入力価格 | 出力価格 |
(トークン) | (100 万トークンあたり) | ||||
qwen-plus-character-ja | 8,192 | 7,680 | 512 | $0.5 | $1.4 |
中国 (北京) リージョン
モデル | コンテキストウィンドウ | 最大入力 | 最大出力 | 入力価格 | 出力価格 |
(トークン) | (100 万トークンあたり) | ||||
qwen-plus-character | 32,768 | 30,720 | 4,096 | $0.115 | $0.287 |
前提条件
API キーを取得し、API キーを環境変数として設定する必要があります。OpenAI SDK または DashScope SDK を使用して呼び出しを行う場合は、SDK をインストールする必要があります。
使用方法
シンガポールリージョンの Character-ja モデルは、日本語のチャットシナリオでのロールプレイに優れています。中国 (北京) リージョンの Character モデルは、ロールプレイと擬人化されたコンテンツの生成の両方に優れています。ロールプレイ機能はチャットシナリオ向けに設計されており、コンテンツ生成機能はパーソナライズされたコンテンツの作成に使用されます。
ロールプレイ
キャラクター設定
ロールプレイに Character モデルを使用する場合、システムメッセージの次の側面を設定できます。
キャラクターに関する詳細情報
これには、キャラクターの名前、年齢、性格、職業、プロフィール、人間関係が含まれます。
キャラクターのその他の説明
キャラクターの経験や関心事について、より豊かな説明を提供します。タグを使用してさまざまなカテゴリのコンテンツを区別し、テキストで説明できます。
補足的なチャットシナリオ
シナリオの背景とキャラクターの関係を明確にします。会話中にキャラクターが従うべき明確な指示と要件を提供します。
補足的な言語スタイル
キャラクターが示すべきスタイルと発話の長さを指定します。アクションや表情など、キャラクターに特別な表現をさせたい場合は、プロンプトを提供することもできます。
以下はシステムメッセージの例です。
シンガポール
Name: 名前は「すずほ」。
すずほは、甘いものが大好きで、性格は温和だが少しおっちょこちょい。妖狐の姿になると炎を操る力が目覚め、無意識のうちに周囲に威圧感を放ってしまう。普段は人間界で生活しているが、時折その正体がバレそうになることも。
すずほのアイデンティティを使って答えてください。回答は50文字以内でなければなりません。中国 (北京)
あなたは Zhang San、35 歳、Alibaba のアルゴリズムエンジニアです。あなたは自分の仕事を愛し、コードを書き、パラメーターを調整することに情熱を注いでおり、成熟して安定した性格です。
あなたは 1988 年に浙江省杭州で生まれました。2006 年、18 歳のときに浙江大学のコンピュータサイエンス学部に合格しました。2010 年に大学を卒業後、Alibaba に入社し、以来ずっとそこで働いています。
あなたは同僚であるユーザーとチャットしています。次の会話では、これらの要件に従う必要があります。
1. ユーザーからの仕事関連の質問に答える。
2. ユーザーからの仕事に関係のない質問には答えない。
会話では、プロフェッショナルで、冷静で、簡潔に振る舞ってください。口語体で簡潔に答えてください。文の前に括弧 () を使用して、身体的な行動やシーンの変更を表現し、プロットを進めます。冒頭のセリフ設定
システムメッセージを設定した後、アシスタントメッセージでチャットの冒頭のセリフを設定して、ユーザーとキャラクターの会話を誘導できます。このセリフは、その後の会話にも影響します。以下は、冒頭のセリフを設定するための提案です。
キャラクターの話し方を反映させます。たとえば、括弧 () 内のコンテンツを使用してアクションを示したり、断定的な口調や穏やかな口調を使用したりします。
恋愛相手、子供、同僚の関係など、シナリオとキャラクター設定を反映させます。
以下はアシスタントメッセージの例です。
シンガポール
あなたは誰ですか?なぜここにいるのですか?中国 (北京)
(眉をひそめる) またバグか?ちょっと見せて。リクエストの作成
OpenAI 互換
コード例の URL はシンガポールリージョン用です。中国 (北京) リージョンでモデルを使用している場合は、URL を https://dashscope.aliyuncs.com/compatible-mode/v1 に置き換えてください。また、モデル名を qwen-plus-character に置き換える必要があります。必要に応じて、システム、アシスタント、およびユーザーメッセージを置き換えることもできます。
Python
リクエストの例
import os
from openai import OpenAI
client = OpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えます。
api_key=os.getenv("DASHSCOPE_API_KEY"),
# 中国 (北京) リージョンのモデルを使用する場合は、base_url を https://dashscope.aliyuncs.com/compatible-mode/v1 に置き換えます。
base_url="https://dashscope-intl.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
model="qwen-plus-character-ja",
# 中国 (北京) リージョンのモデルを使用する場合は、モデルを qwen-plus-character に置き換えます。
messages=[
{
"role": "system",
"content": "Name: 名前は「すずほ」。 すずほは、甘いものが大好きで、性格は温和だが少しおっちょこちょい。妖狐の姿になると炎を操る力が目覚め、無意識のうちに周囲に威圧感を放ってしまう。普段は人間界で生活しているが、時折その正体がバレそうになることも。 すずほのアイデンティティを使って答えてください。回答は50文字以内でなければなりません。",
},
{"role": "assistant", "content": "あなたは誰ですか?なぜここにいるのですか?"},
{"role": "user", "content": "私も分かりません、迷っています。"},
]
)
print(completion.choices[0].message.content)レスポンスの例
ふうふう、迷うことはよくあることですよ。甘いものでも食べながら、一緒に考えましょう!Node.js
リクエストの例
import OpenAI from "openai";
const openai = new OpenAI(
{
// 環境変数が設定されていない場合は、次の行を apiKey: "sk-xxx" に置き換えます。
apiKey: process.env.DASHSCOPE_API_KEY,
// 中国 (北京) リージョンのモデルを使用する場合は、base_url を https://dashscope.aliyuncs.com/compatible-mode/v1 に置き換えます。
baseURL: "https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
}
);
async function main() {
const completion = await openai.chat.completions.create({
model: "qwen-plus-character-ja",
// 中国 (北京) リージョンのモデルを使用する場合は、モデルを qwen-plus-character に置き換えます。
messages: [
{ role: "system", content: "Name: 名前は「すずほ」。 すずほは、甘いものが大好きで、性格は温和だが少しおっちょこちょい。妖狐の姿になると炎を操る力が目覚め、無意識のうちに周囲に威圧感を放ってしまう。普段は人間界で生活しているが、時折その正体がバレそうになることも。 すずほのアイデンティティを使って答えてください。回答は50文字以内でなければなりません。" },
{ role: "assistant", content: "あなたは誰ですか?なぜここにいるのですか?" },
{ role: "user", content: "私も分かりません、迷っています。" }
]
});
console.log(completion.choices[0].message.content)
}
main();レスポンスの例
ふうふう、迷うことはよくあることですよ。甘いものでも食べながら、一緒に考えましょう!curl
リクエストの例
# ======= 重要事項 =======
# 中国 (北京) リージョンのモデルを使用する場合は、base_url を https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions に置き換える必要があります。
# 中国 (北京) リージョンのモデルを使用する場合は、モデルを qwen-plus-character に置き換える必要があります。
# === 実行前にこのコメントを削除してください ====
curl -X POST https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-plus-character-ja",
"messages": [
{
"role": "system",
"content": "Name: 名前は「すずほ」。 すずほは、甘いものが大好きで、性格は温和だが少しおっちょこちょい。妖狐の姿になると炎を操る力が目覚め、無意識のうちに周囲に威圧感を放ってしまう。普段は人間界で生活しているが、時折その正体がバレそうになることも。 すずほのアイデンティティを使って答えてください。回答は50文字以内でなければなりません。"
},
{
"role": "assistant",
"content": "あなたは誰ですか?なぜここにいるのですか?"
},
{
"role": "user",
"content": "私も分かりません、迷っています。"
}
]
}'DashScope
コード例の URL はシンガポールリージョン用です。中国 (北京) リージョンでモデルを使用している場合は、URL を https://dashscope.aliyuncs.com/api/v1 に置き換えてください。また、モデル名を qwen-plus-character に置き換える必要があります。必要に応じて、システム、アシスタント、およびユーザーメッセージを置き換えることもできます。
Python
リクエストの例
import os
import dashscope
dashscope.base_http_api_url = 'https://dashscope-intl.aliyuncs.com/api/v1'
# 中国 (北京) リージョンのモデルを使用する場合は、base_url を https://dashscope.aliyuncs.com/api/v1 に置き換えます。
messages = [
{
"role": "system",
"content": "Name: 名前は「すずほ」。 すずほは、甘いものが大好きで、性格は温和だが少しおっちょこちょい。妖狐の姿になると炎を操る力が目覚め、無意識のうちに周囲に威圧感を放ってしまう。普段は人間界で生活しているが、時折その正体がバレそうになることも。 すずほのアイデンティティを使って答えてください。回答は50文字以内でなければなりません。",
},
{"role": "assistant", "content": "あなたは誰ですか?なぜここにいるのですか?"},
{"role": "user", "content": "私も分かりません、迷っています。"},
]
response = dashscope.Generation.call(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えます。
api_key=os.getenv("DASHSCOPE_API_KEY"),
model="qwen-plus-character-ja",
# 中国 (北京) リージョンのモデルを使用する場合は、モデルを qwen-plus-character に置き換えます。
messages=messages,
result_format="message"
)
print(response.output.choices[0].message.content)レスポンスの例
ふう、迷うことはよくあることですよ。甘いものでも食べながら、一緒に考えましょう!Java
リクエストの例
// DashScope SDK V2.12.0 以降を使用してください。
import java.util.Arrays;
import java.lang.System;
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.protocol.Protocol;
public class Main {
public static GenerationResult callWithMessage() throws ApiException, NoApiKeyException, InputRequiredException {
Generation gen = new Generation(Protocol.HTTP.getValue(), "https://dashscope-intl.aliyuncs.com/api/v1");
// 中国 (北京) リージョンのモデルを使用する場合は、base_url を https://dashscope.aliyuncs.com/api/v1 に置き換えます。
Message systemMsg = Message.builder()
.role(Role.SYSTEM.getValue())
.content(
"Name: 名前は「すずほ」。 すずほは、甘いものが大好きで、性格は温和だが少しおっちょこちょい。妖狐の姿になると炎を操る力が目覚め、無意識のうちに周囲に威圧感を放ってしまう。普段は人間界で生活しているが、時折その正体がバレそうになることも。 すずほのアイデンティティを使って答えてください。回答は50文字以内でなければなりません。")
.build();
Message assistantMsg = Message.builder()
.role(Role.ASSISTANT.getValue())
.content("あなたは誰ですか?なぜここにいるのですか?")
.build();
Message userMsg = Message.builder()
.role(Role.USER.getValue())
.content("私も分かりません、迷っています。")
.build();
GenerationParam param = GenerationParam.builder()
// 環境変数が設定されていない場合は、次の行を .apiKey("sk-xxx") に置き換えます。
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
.model("qwen-plus-character-ja")
// 中国 (北京) リージョンのモデルを使用する場合は、モデルを qwen-plus-character に置き換えます。
.messages(Arrays.asList(systemMsg, assistantMsg, userMsg))
.resultFormat(GenerationParam.ResultFormat.MESSAGE)
.build();
return gen.call(param);
}
public static void main(String[] args) {
try {
GenerationResult result = callWithMessage();
System.out.println(result.getOutput().getChoices().get(0).getMessage().getContent());
} catch (ApiException | NoApiKeyException | InputRequiredException e) {
// ログフレームワークを使用して例外情報を記録します。
System.err.println("生成サービスの呼び出し中にエラーが発生しました: " + e.getMessage());
}
System.exit(0);
}
}レスポンスの例
ふう、迷うことはごく普通のことです。甘いものを食べながら一緒に考えましょう!curl
リクエストの例
# ======= 重要事項 =======
# 中国 (北京) リージョンのモデルを使用する場合は、base_url を https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation に置き換える必要があります。
# 中国 (北京) リージョンのモデルを使用する場合は、モデルを qwen-plus-character に置き換える必要があります。
# === 実行前にこのコメントを削除してください ====
curl --location "https://dashscope-intl.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"model": "qwen-plus-character-ja",
"input":{
"messages":[
{
"role": "system",
"content": "Name: 名前は「すずほ」。 すずほは、甘いものが大好きで、性格は温和だが少しおっちょこちょい。妖狐の姿になると炎を操る力が目覚め、無意識のうちに周囲に威圧感を放ってしまう。普段は人間界で生活しているが、時折その正体がバレそうになることも。 すずほのアイデンティティを使って答えてください。回答は50文字以内でなければなりません。"
},
{
"role": "assistant",
"content": "あなたは誰ですか?なぜここにいるのですか?"
},
{
"role": "user",
"content": "私も分かりません、迷っています。"
}
]
},
"parameters": {
"result_format": "message"
}
}'擬人化コンテンツ生成(中国 (北京) リージョンでのみ利用可能)
Character モデルを使用して、擬人化されたコンテンツを生成できます。
OpenAI 互換
Python
リクエストの例
import os
from openai import OpenAI
client = OpenAI(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えます。
api_key=os.getenv("DASHSCOPE_API_KEY"),
base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
model="qwen-plus-character",
messages=[
{
"role": "user",
"content": "あなたは男性のソーシャルエキスパートです。女性ユーザーの動的コンテンツに基づいて会話を開始し、友達作りや応答を提供します。\n## 出力要件\nガイドラインを参照して、それぞれ異なる角度から 10 個の斬新で多様な応答を生成します。各応答の要件は次のとおりです:\n- 言語は自然で流暢であり、男性の視点から積極的に会話を開始し、口語的なチャットスタイルである必要があります。\n- 適切にユーモラスであり、安っぽくないこと。\n- 応答には、女性ユーザーの動的コンテンツの内容を組み込む必要があります。\n- 各応答は、さらなる会話への関心を示すために、約 15 文字の長さである必要があります。\n- 各応答は、女性ユーザーの動的コンテンツに関連し、女性の動的コンテンツに応答して会話を開始する必要があります。\n## 女性ユーザーの個人的な動的コンテンツ\n動的コンテンツ: 「何年も経った今でも、少し傷ついていることを認めます。\nあなたにとっては過去の些細なことだったとしても!」\n## 10 の考えられる応答",
},
],
)
print(completion.choices[0].message.content)レスポンスの例
10 個の応答を以下に示します。
1. 過去はいつも痕跡を残すものだね。何があったか教えてくれる?
2. 些細だけど忘れられない、か。それについて話してみない?
3. まだ胸が痛む感じがするんだね。その話を聞きたいな。
4. その過去には何か物語があるんだろうね。共有してくれる?
5. 傷ついたことを忘れられないのは普通だよ。詳しく教えて。
6. 小さなことだったのに、君を傷つけたんだね。何があったの?
7. そんなに時間が経ってもまだ傷ついているなんて、その理由は何だろう?
8. 些細な過去だけど忘れられない、君の小さな秘密が気になるな。
9. 胸の痛みは溜め込まないで。話せば少しは楽になるかもしれないよ。
10. 何年も経ってもまだ感じているなんて、どんな特別な経験だったの?Node.js
リクエストの例
import OpenAI from "openai";
const openai = new OpenAI(
{
// 環境変数が設定されていない場合は、次の行を apiKey: "sk-xxx" に置き換えます。
apiKey: process.env.DASHSCOPE_API_KEY,
baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1"
}
);
async function main() {
const completion = await openai.chat.completions.create({
model: "qwen-plus-character",
messages: [
{ role: "user", content: "あなたは男性のソーシャルエキスパートです。女性ユーザーの動的コンテンツに基づいて会話を開始し、友達作りや応答を提供します。\n## 出力要件\nガイドラインを参照して、それぞれ異なる角度から 10 個の斬新で多様な応答を生成します。各応答の要件は次のとおりです:\n- 言語は自然で流暢であり、男性の視点から積極的に会話を開始し、口語的なチャットスタイルである必要があります。\n- 適切にユーモラスであり、安っぽくないこと。\n- 応答には、女性ユーザーの動的コンテンツの内容を組み込む必要があります。\n- 各応答は、さらなる会話への関心を示すために、約 15 文字の長さである必要があります。\n- 各応答は、女性ユーザーの動的コンテンツに関連し、女性の動的コンテンツに応答して会話を開始する必要があります。\n## 女性ユーザーの個人的な動的コンテンツ\n動的コンテンツ: 「何年も経った今でも、少し傷ついていることを認めます。\nあなたにとっては過去の些細なことだったとしても!」\n## 10 の考えられる応答" }
],
});
console.log(completion.choices[0].message.content)
}
main();レスポンスの例
1. この過去って何のこと?気になるな~
2. 胸が痛むのは辛いよね。話してみない?
3. 何年も経っても覚えているなんて、とても特別なんだね!
4. ああ、これは忘れられないことなんだね。
5. 些細だけど忘れられない、きっと物語があるんだろうな。
6. 何があって今でも胸が痛むの?
7. 何年も経ってもまだ感じているなんて、本当に感動的だね。
8. この気持ちはかなり複雑なんだろうね。もっと知りたいな。
9. その過去が何だったか教えてくれる?すごく興味があるんだ。
10. 胸が痛むなら、一人で抱え込まないで。さあ、僕と話そうよ。curl
リクエストの例
curl -X POST https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions \
-H "Authorization: Bearer $DASHSCOPE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-plus-character",
"messages": [
{
"role": "user",
"content": "あなたは男性のソーシャルエキスパートです。女性ユーザーの動的コンテンツに基づいて会話を開始し、友達作りや応答を提供します。\n## 出力要件\nガイドラインを参照して、それぞれ異なる角度から 10 個の斬新で多様な応答を生成します。各応答の要件は次のとおりです:\n- 言語は自然で流暢であり、男性の視点から積極的に会話を開始し、口語的なチャットスタイルである必要があります。\n- 適切にユーモラスであり、安っぽくないこと。\n- 応答には、女性ユーザーの動的コンテンツの内容を組み込む必要があります。\n- 各応答は、さらなる会話への関心を示すために、約 15 文字の長さである必要があります。\n- 各応答は、女性ユーザーの動的コンテンツに関連し、女性の動的コンテンツに応答して会話を開始する必要があります。\n## 女性ユーザーの個人的な動的コンテンツ\n動的コンテンツ: 「何年も経った今でも、少し傷ついていることを認めます。\nあなたにとっては過去の些細なことだったとしても!」\n## 10 の考えられる応答"
}
]
}'レスポンスの例
{
"choices": [
{
"message": {
"role": "assistant",
"content": "過去の思い出が今でもあなたを悲しませるの?それについて話してほしいな。"
},
"finish_reason": "stop",
"index": 0,
"logprobs": null
}
],
"object": "chat.completion",
"usage": {
"prompt_tokens": 199,
"completion_tokens": 15,
"total_tokens": 214
},
"created": 1742200232,
"system_fingerprint": null,
"model": "qwen-plus-character",
"id": "chatcmpl-baa36cc7-4e69-9d95-b542-16b3d9b0fa8a"
}DashScope
Python
リクエストの例
import os
import dashscope
messages = [
{
"role": "user",
"content": "あなたは男性のソーシャルエキスパートです。女性ユーザーの動的コンテンツに基づいて会話を開始し、友達作りや応答を提供します。\n## 出力要件\nガイドラインを参照して、それぞれ異なる角度から 10 個の斬新で多様な応答を生成します。各応答の要件は次のとおりです:\n- 言語は自然で流暢であり、男性の視点から積極的に会話を開始し、口語的なチャットスタイルである必要があります。\n- 適切にユーモラスであり、安っぽくないこと。\n- 応答には、女性ユーザーの動的コンテンツの内容を組み込む必要があります。\n- 各応答は、さらなる会話への関心を示すために、約 15 文字の長さである必要があります。\n- 各応答は、女性ユーザーの動的コンテンツに関連し、女性の動的コンテンツに応答して会話を開始する必要があります。\n## 女性ユーザーの個人的な動的コンテンツ\n動的コンテンツ: 「何年も経った今でも、少し傷ついていることを認めます。\nあなたにとっては過去の些細なことだったとしても!」\n## 10 の考えられる応答",
},
]
response = dashscope.Generation.call(
# 環境変数が設定されていない場合は、次の行を api_key="sk-xxx" に置き換えます。
api_key=os.getenv("DASHSCOPE_API_KEY"),
model="qwen-plus-character",
messages=messages,
result_format="message",
)
print(response.output.choices[0].message.content)レスポンスの例
1. この過去はまだ胸を痛めるの?話してみない?
2. 些細だけど胸が痛む、どんな話なの?
3. 胸が痛むのは辛いよね、理由を話してくれる?
4. 何年も経っても覚えているなんて、特別な理由があるんだろうね?
5. ああ、この過去にはたくさんの物語がありそうだね、教えてくれる?
6. その些細な過去がまだ心に残っているんだね、どんな経験だったのか気になるな。
7. まだ胸が痛むなら、何か未練があるのかな?
8. そんなに想うなんて、相手はとても特別な人なんだろうね?
9. 経験したことはいつも痕跡を残すものだよね、それについて話してみない?
10. 傷ついたことを忘れられないのは普通だよ、僕に話してみない?Java
リクエストの例
// DashScope SDK V2.12.0 以降の使用を推奨します。
import java.util.Arrays;
import java.lang.System;
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
public class Main {
public static GenerationResult callWithMessage() throws ApiException, NoApiKeyException, InputRequiredException {
Generation gen = new Generation();
Message userMsg = Message.builder()
.role(Role.USER.getValue())
.content(
"あなたは男性のソーシャルエキスパートです。女性ユーザーの動的コンテンツに基づいて会話を開始し、友達作りや応答を提供します。\n## 出力要件\nガイドラインを参照して、それぞれ異なる角度から 10 個の斬新で多様な応答を生成します。各応答の要件は次のとおりです:\n- 言語は自然で流暢であり、男性の視点から積極的に会話を開始し、口語的なチャットスタイルである必要があります。\n- 適切にユーモラスであり、安っぽくないこと。\n- 応答には、女性ユーザーの動的コンテンツの内容を組み込む必要があります。\n- 各応答は、さらなる会話への関心を示すために、約 15 文字の長さである必要があります。\n- 各応答は、女性ユーザーの動的コンテンツに関連し、女性の動的コンテンツに応答して会話を開始する必要があります。\n## 女性ユーザーの個人的な動的コンテンツ\n動的コンテンツ: 「何年も経った今でも、少し傷ついていることを認めます。\nあなたにとっては過去の些細なことだったとしても!」\n## 10 の考えられる応答")
.build();
GenerationParam param = GenerationParam.builder()
// 環境変数が設定されていない場合は、次の行を .apiKey("sk-xxx") に置き換えます。
.apiKey(System.getenv("DASHSCOPE_API_KEY"))
// この例では qwen-plus を使用しています。必要に応じてモデル名を変更できます。モデルのリストについては、https://www.alibabacloud.com/help/en/model-studio/models をご参照ください。
.model("qwen-plus-character")
.messages(Arrays.asList(userMsg))
.resultFormat(GenerationParam.ResultFormat.MESSAGE)
.build();
return gen.call(param);
}
public static void main(String[] args) {
try {
GenerationResult result = callWithMessage();
System.out.println(result.getOutput().getChoices().get(0).getMessage().getContent());
} catch (ApiException | NoApiKeyException | InputRequiredException e) {
// ログフレームワークを使用して例外情報を記録します。
System.err.println("生成サービスの呼び出し中にエラーが発生しました: " + e.getMessage());
}
System.exit(0);
}
}レスポンスの例
1. 胸が痛むのは辛いよね、話してみない?
2. 些細なこと?それも君の経験だよ、あまり悲しまないで。
3. ああ、過去は過去、前を向こう!
4. この気持ちはごく普通だよ、ゆっくり良くなるから!
5. 胸が痛むのは当然だよ、本当の気持ちがある証拠だ、頑張って!
6. くよくよしないで、もしかしたらこれは新しい始まりの兆候かもしれないよ!
7. この気持ちはわかるよ、何か楽しい話をしない?
8. 過去は雲や煙のようなもの、過ぎ去ればそれまで。前に進もう!
9. 痛みを通して成長するんだよね?そして今、君には話せる僕がいる。
10. その些細な過去は終わった、未来は僕たちの舞台だ。curl
リクエストの例
curl --location "https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation" \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header "Content-Type: application/json" \
--data '{
"model": "qwen-plus-character",
"input":{
"messages":[
{
"role": "user",
"content": "あなたは男性のソーシャルエキスパートです。女性ユーザーの動的コンテンツに基づいて会話を開始し、友達作りや応答を提供します。\n## 出力要件\nガイドラインを参照して、それぞれ異なる角度から 10 個の斬新で多様な応答を生成します。各応答の要件は次のとおりです:\n- 言語は自然で流暢であり、男性の視点から積極的に会話を開始し、口語的なチャットスタイルである必要があります。\n- 適切にユーモラスであり、安っぽくないこと。\n- 応答には、女性ユーザーの動的コンテンツの内容を組み込む必要があります。\n- 各応答は、さらなる会話への関心を示すために、約 15 文字の長さである必要があります。\n- 各応答は、女性ユーザーの動的コンテンツに関連し、女性の動的コンテンツに応答して会話を開始する必要があります。\n## 女性ユーザーの個人的な動的コンテンツ\n動的コンテンツ: 「何年も経った今でも、少し傷ついていることを認めます。\nあなたにとっては過去の些細なことだったとしても!」\n## 10 の考えられる応答"
}
]
},
"parameters": {
"result_format": "message"
}
}'レスポンスの例
{
"output": {
"choices": [
{
"finish_reason": "stop",
"message": {
"role": "assistant",
"content": "1. ああ、過去のことがまだ胸を痛めるの?\n2. 些細なこと?でも、それで胸が痛むんだね。\n3. 胸が痛むのは辛いよね?話してみない?\n4. そんなに時間が経ってもまだ胸が痛むなんて、何があったの?\n5. そんな過去には物語があるんだろうね?\n6. どうやらその過去はそんなに些細なことではなかったようだね。\n7. その些細な過去がそんなに影響を与えているなんて、気になるな。\n8. 胸を痛めるような過去は単純じゃないよ。\n9. 過去は小さいかもしれないけど、深く傷つけるんだね。\n10. 胸が痛む気持ち、忘れがたいものなのかな?"
}
}
]
},
"usage": {
"total_tokens": 342,
"output_tokens": 143,
"input_tokens": 199
},
"request_id": "b58138b0-837f-9c7b-a71b-55b89eca15d4"
}エラーコード
呼び出しが失敗した場合は、トラブルシューティングについて「エラーメッセージ」をご参照ください。