MaaS_Ge
MaaS_Ge原生协议 API
请求方法
POST
请求路径:
-
非流式请求:https://genaiapi.cloudsway.net/v1/ai/{endpointPath}/generateContent
-
流式请求: https://genaiapi.cloudsway.net/v1/ai/{endpointPath}/streamGenerateContent
路径参数
| 参数 |
类型 |
必需 |
描述 |
endpointPath |
string |
否 |
路径唯一标识,通过订购模型获取 |
modelName |
string |
是 |
模型名称,例如 MaaS_2.5_pro |
alt |
string |
否 |
sse格式返回结果。值:sse |
Body参数
| 参数 |
类型 |
必需 |
描述 |
cachedContent |
string |
否 |
用作预测上下文的缓存内容名称 |
contents |
Content[] |
是 |
与模型的对话内容(单轮或多轮) |
systemInstruction |
Content |
否 |
系统指令 |
tools |
Tool[] |
否 |
函数调用定义 |
safetySettings |
SafetySetting[] |
否 |
安全设置 |
generationConfig |
GenerationConfig |
否 |
生成配置 |
labels |
map |
否 |
键值对格式的元数据,暂不支持 |
Content 对象
| 参数 |
类型 |
必需 |
描述 |
role |
string |
否 |
消息来源:user(用户)或 model(模型) |
parts |
Part[] |
是 |
消息的有序部分列表 |
Part 对象
| 参数 |
类型 |
必需 |
描述 |
text |
string |
可选 |
文本内容 |
inlineData |
Blob |
可选 |
内联数据 |
fileData |
FileData |
可选 |
文件数据 |
functionCall |
FunctionCall |
可选 |
函数调用 |
functionResponse |
FunctionResponse |
可选 |
函数响应 |
videoMetadata |
VideoMetadata |
否 |
视频元数据 |
Blob 对象(内联数据)
| 参数 |
类型 |
必需 |
描述 |
mimeType |
string |
是 |
支持的 MIME 类型:
application/pdf, audio/mpeg, image/png, video/mp4 等 |
data |
String |
是 |
base64 编码数据(最大 20MB) |
FileData 对象
| 参数 |
类型 |
必需 |
描述 |
mimeType |
string |
是 |
文件 MIME 类型 |
fileUri |
string |
是 |
文件 URI(Cloud Storage、HTTP 或 YouTube) |
| 参数 |
类型 |
必需 |
描述 |
startOffset |
Long |
否 |
视频起始偏移 |
endOffset |
Long |
否 |
视频结束偏移 |
SafetySetting 对象
| 参数 |
类型 |
必需 |
描述 |
category |
String |
可选 |
安全类别:
HARM_CATEGORY_SEXUALLY_EXPLICIT, HARM_CATEGORY_HATE_SPEECH,
HARM_CATEGORY_HARASSMENT, HARM_CATEGORY_DANGEROUS_CONTENT |
threshold |
String |
可选 |
屏蔽阈值:
BLOCK_LOW_AND_ABOVE, BLOCK_MEDIUM_AND_ABOVE,
BLOCK_ONLY_HIGH, BLOCK_NONE, OFF |
method |
String |
可选 |
屏蔽方法:SEVERITY 或 PROBABILITY |
GenerationConfig 对象
| 参数 |
类型 |
必需 |
描述 |
temperature |
float |
否 |
随机性控制(0.0-2.0,默认 1.0) |
topP |
float |
否 |
核采样(0.0-1.0,默认 0.95) |
candidateCount |
int |
否 |
响应变体数量(1-8,默认 1) |
maxOutputTokens |
int |
否 |
最大输出 token 数 |
stopSequences |
string[] |
否 |
停止序列(最多 5 个) |
presencePenalty |
float |
否 |
存在惩罚(-2.0 到 2.0)暂不支持 |
frequencyPenalty |
float |
否 |
频率惩罚(-2.0 到 2.0)暂不支持 |
responseMimeType |
string |
否 |
响应 MIME 类型:
application/json, text/plain, text/x.enum |
responseSchema |
json |
否 |
响应模式(需配合 responseMimeType) |
seed |
int |
否 |
随机种子 |
responseLogprobs |
boolean |
否 |
是否返回 token 对数概率,暂不支持 |
logprobs |
int |
否 |
返回的候选 token 数量(1-5),暂不支持 |
audioTimestamp |
boolean |
否 |
是否启用音频时间戳,暂不支持 |
| thinkingConfig |
ThinkingConfig |
否 |
思考配置 |
ThinkingConfig 对象
| 参数 |
类型 |
必需 |
描述 |
includeThoughts |
boolean |
否 |
指示是否在结果中 是否包含thinking |
thinkingBudget |
int |
否 |
控制思考token的数量 |
响应正文
响应参数
| 参数 |
类型 |
描述 |
candidates |
Candidate[] |
生成的候选内容 |
usageMetadata |
UsageMetadata |
token 使用元数据 |
modelVersion |
string |
使用的模型版本(如 gemini-1.5-flash-002) |
Candidate 对象
| 参数 |
类型 |
描述 |
content |
Content |
生成的内容 |
finishReason |
enum |
停止原因:
FINISH_REASON_STOP, FINISH_REASON_MAX_TOKENS,
FINISH_REASON_SAFETY, FINISH_REASON_RECITATION 等 |
safetyRatings |
SafetyRating[] |
安全评分 |
citationMetadata |
CitationMetadata |
引用元数据 |
avgLogprobs |
double |
平均对数概率 |
logprobsResult |
LogprobsResult |
对数概率结果 |
SafetyRating 对象
| 参数 |
类型 |
描述 |
category |
enum |
安全类别 |
probability |
enum |
有害概率:
NEGLIGIBLE, LOW, MEDIUM, HIGH |
blocked |
boolean |
是否被阻止 |
| 参数 |
类型 |
描述 |
citations |
Citation[] |
引用列表 |
Citation 对象
| 参数 |
类型 |
描述 |
startIndex |
integer |
引用起始位置 |
endIndex |
integer |
引用结束位置 |
uri |
string |
引用来源 URI |
title |
string |
引用标题 |
license |
string |
引用许可 |
publicationDate |
Date |
发布日期 |
| 参数 |
类型 |
描述 |
promptTokenCount |
integer |
输入 token 数 |
candidatesTokenCount |
integer |
输出 token 数 |
totalTokenCount |
integer |
总 token 数 |
LogprobsResult 对象
| 参数 |
类型 |
描述 |
topCandidates |
TopCandidates[] |
每个步骤的候选 token |
chosenCandidates |
ChosenCandidate[] |
模型选择的 token |
TopCandidates 对象
| 参数 |
类型 |
描述 |
candidates |
CandidateToken[] |
候选 token 列表 |
CandidateToken 对象
| 参数 |
类型 |
描述 |
token |
string |
token 文本 |
logProbability |
float |
token 的对数概率 |
ChosenCandidate 对象
| 参数 |
类型 |
描述 |
token |
string |
模型选择的 token |
logProbability |
float |
token 的对数概率 |
示例请求
请求参数格式
{
"cachedContent": string,
"contents": [
{
"role": string,
"parts": [
{
// Union field data can be only one of the following:
"text": string,
"inlineData": {
"mimeType": string,
"data": string
},
"fileData": {
"mimeType": string,
"fileUri": string
},
// End of list of possible types for union field data.
"videoMetadata": {
"startOffset": {
"seconds": integer,
"nanos": integer
},
"endOffset": {
"seconds": integer,
"nanos": integer
}
}
}
]
}
],
"systemInstruction": {
"role": string,
"parts": [
{
"text": string
}
]
},
"tools": [
{
"functionDeclarations": [
{
"name": string,
"description": string,
"parameters": {
object (OpenAPI Object Schema)
}
}
]
}
],
"safetySettings": [
{
"category": enum (HarmCategory),
"threshold": enum (HarmBlockThreshold)
}
],
"generationConfig": {
"temperature": number,
"topP": number,
"topK": number,
"candidateCount": integer,
"maxOutputTokens": integer,
"presencePenalty": float,
"frequencyPenalty": float,
"stopSequences": [
string
],
"responseMimeType": string,
"responseSchema": schema,
"seed": integer,
"responseLogprobs": boolean,
"logprobs": integer,
"audioTimestamp": boolean
},
"labels": {
string: string
}
}
完整请求
1. 流式请求:
curl --location 'https://genaiapi.cloudsway.net/v1/ai/{endpointPath}/streamGenerateContent?alt=sse' \
--header 'Authorization: Bearer {YOUR AK}' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
{
"role":"user",
"parts": [
{
"text": "Explain how AI works in a few words"
}
]
}
]
}'
2.流式结构请求
curl --location 'https://genaiapi.cloudsway.net/v1/ai/{endpointPath}/streamGenerateContent' \
--header 'Authorization: Bearer {YOUR AK}' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
{
"role":"user",
"parts": [
{
"text": "Explain how AI works in a few words"
}
]
}
]
}'
3.非流式请求
curl --location 'https://genaiapi.cloudsway.net/v1/ai/{endpointPath}/generateContent' \
--header 'Authorization: Bearer {YOUR AK}' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
{
"role":"user",
"parts": [
{
"text": "Explain how AI works in a few words"
}
]
}
]
}'
响应结果示例
{
"candidates": [
{
"content": {
"parts": [
{
"text": string
}
]
},
"finishReason": enum (FinishReason),
"safetyRatings": [
{
"category": enum (HarmCategory),
"probability": enum (HarmProbability),
"blocked": boolean
}
],
"citationMetadata": {
"citations": [
{
"startIndex": integer,
"endIndex": integer,
"uri": string,
"title": string,
"license": string,
"publicationDate": {
"year": integer,
"month": integer,
"day": integer
}
}
]
},
"avgLogprobs": double,
"logprobsResult": {
"topCandidates": [
{
"candidates": [
{
"token": string,
"logProbability": float
}
]
}
],
"chosenCandidates": [
{
"token": string,
"logProbability": float
}
]
}
}
],
"usageMetadata": {
"promptTokenCount": integer,
"candidatesTokenCount": integer,
"totalTokenCount": integer
},
"modelVersion": string
}
Google官方的OpenAI协议API
Google官方的gemini兼容openai协议的接口
请求协议
Https
| 参数名 |
值 |
| Authorization |
Bearer |
| Content-Type |
application/json |
请求url
https://genaiapi.cloudsway.net/v1/ai/{YOUR ENDPOINT}/google/chat/completions
请求Body
Google 模型 Chat Completions API 支持参数
基础参数
| 参数 |
支持情况 |
说明 |
| messages |
✅ 支持 |
支持以下消息类型:
- 系统消息
- 用户消息(支持text和image_url类型,image_url支持Cloud Storage URI或base64编码)
- 助手消息
- 工具消息
- 函数消息(已弃用,但保持兼容) |
| model |
✅ 支持 |
模型名称 |
| max_tokens/max_completion_tokens |
✅ 支持 |
响应最大token数 |
| temperature |
✅ 支持 |
采样温度 |
| top_p |
✅ 支持 |
核采样参数 |
| n |
✅ 支持 |
生成结果数量 |
| stream |
✅ 支持 |
流式输出 |
| stop |
✅ 支持 |
停止序列 |
| presence_penalty |
✅ 支持 |
存在惩罚 |
| frequency_penalty |
✅ 支持 |
频率惩罚 |
| seed |
✅ 支持 |
对应Gemini的GenerationConfig.seed |
多模态输入
| 参数 |
支持情况 |
说明 |
| input_audio |
✅ 支持 |
支持URI或blob格式,所有有效MIME类型 |
| image_url |
✅ 支持 |
支持URI或blob格式,detail参数全请求统一 |
工具和函数
| 参数 |
支持情况 |
说明 |
| tools |
✅ 支持 |
工具定义 |
| tool_choice |
✅ 支持 |
选项:none, auto, required(ANY模式), validated(VALIDATED模式) |
| functions |
⚠️ 已弃用 |
保持兼容 |
| function_call |
⚠️ 已弃用 |
保持兼容 |
Gemini特有参数
{
"extra_body": {
"google": {
"safety_settings": "安全设置",
"cached_content": "缓存内容",
"thinking_config": "思考配置"
}
},
"extra_part": {
"google": {
"thought": "显式标记思考内容"
}
}
}
请求demo
curl --location --request POST 'https://genaiapi.cloudsway.net/v1/ai/{your endpointpath}/google/chat/completions' \
--header 'Authorization: Bearer ${your_ak}' \
--data-raw '{
"messages": [
{
"role": "user",
"content": "编写一篇150字的寓言"
}
],
"model": "gemini-3-flash-preview",
"stream": false,
"temperature": 0.2,
"thinking": {
"type": "enabled",
"thinking_level": "low"
}
}'
响应结果
{
"id": "1YNsauHtN9akktwPt46-2Ac",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "这是一篇约150字的寓言故事:\n\n**《溪水与巨石》**\n\n山谷中,一条清澈的小溪被巨石拦住了去路。巨石傲慢地说:“我坚硬无比,你这软弱的水流休想从我这里通过!”小溪没有争辩,只是平静地调整方向,顺着石缝悄悄绕了过去,继续奔向远方。\n\n岁月流转,小溪汇成了大河,见识了大海的壮阔;而那块巨石,依然困在阴暗的山谷里,并在日复一日的冲刷下,被磨平了棱角,变得越来越小。\n\n**寓意:** 真正的强大不在于外表的强硬,而在于内心的灵活与持之以恒的韧性。面对阻碍,与其硬碰硬,不如学会变通。",
"extra_content": {
"google": {
"thought_signature": "AY89a1/cVFB2umPW2Xi+ZhQBjZYe8N7Vzpzynw4KzRxiYqDWQHVISVEEKJxttiCdSLjSlIg5KBfJrofNeq80M9CCZC7p8jBNxW3WG6hvxO3Dwayw+9bGEGQu/MecWLMzKUqhioGmn0mjvxZJH2AJaU4b/CAEBc+AUIfZMgJWrmEMkKYaf3n7yVjcln9RxVqGmklQ6UycvMV/XVwI5DGo+OSwjIcNHO4+M7IkvSw9aN5BGkDvt8k4X6VpznL50DzzRwhA7O1d0x6BCzK742htgDK+ox3gtnMhJfFZiE8cqep8viJmVhyHuUgPs0HoF0aSLJ01QqxPAVwG5+KRwVPoXn8uFAoxNVLSs/57f/YbyASLvAJ3oAmfDct/k9Zjr4cShU0f8CDcWnscZ9Elh0jwpqAtTMVDW96hLW0ouDgnXRL7jRqrQolADKv5iym0LiP0UM24l/4DhKPz/neRyu6JoQnkVZKxZ1bjgZLRzHzpbfQMKc4yo6V4VfC5A9EUjcG0mSUx2ojz6Y3CsKVMwa/W3FsQGcZE9z7Ok1vmtHEXA5NOFt8nuc6CKvq+fxvBZkBUx+Ukshcpt8mmqy/ZuwWB8hW/CiG1XXNNkebaAIBac9n8oXmyVwRpqL+alf9JUxLIUkW41uZ0W1KKaC9KIjrAoZRZ0TFtB5P57G0Iy8fFrBukt6NmR5Q/8JBqjCWfVg4N9tvU7ZRVsoolt1SmfCBACPjTMWid+EMbSRn1RhkJXTWoc42say5L7yAQmp0CTne9/SCMvv0St4Jx/+VleMPbvngCR8rn5DotSRcXYreDdtcyWGFafDX0gQQnhQsvil/8Dutm8nS0U78n7JtJLznRlVtcSS+ELqMjn06n+ChfjzKC36Je6J4ljIRnEAZZKDsTIO2Gk9LSjMh5G2a4pCO3vDNeBB42OTllHIN2Xb7o1JSbSpKEDhNPCv0aBap71wqqqYieHTkhZuTgmM+u79GD7GdzUGB+Bem63CiQu/vU1iKzaOqY8KPfb0Dbs2kHLZvzIxzWKViRyo3Q4248h1MpIx/46j4Ky8dCmNYNugw1nHa5SqHL6FxZYE8uX3AwKQxtabEV87t1U1ZZ9lRVdJkC9Xuz7xwnO4hSQDFv2aKKnQPsJkBXJ4Lu+MI0l3HXAgwm81ZinwHcH7BZ79iPSEo7bII2N+g8ZWmih4GGaSx9h085r1Wgu88XPsJW3x1sLsNFcZKRKSshFyUSFQ7SHtIa+n3pItZgMY7QSDyA4CmKVwCxZ+auWiDfq9ZpYNDS59NFsU0a0WgmgzGCfpBhcnUuFSL9ml6GTjc7fxte5dBhj8Nr0jJIHo8b6Ea77/ris6vm8PCsHRaBO03ZF0Hdh5tcT5D2wX1U+s6l6Q51cvZn2WjZfpG5otXcSnFfmR1QBqvCgVh9XW26NESRxHg0MdcLQIkq+K2toqbszOCznQYVdIPabFNsS8+trdxroGFC/jCTRB13eoF3yhiiobYIII9CY32OTMry6v+aWjj0x0UVzj6pMD66wNo+1Ti/50jAB3M39fam4n5ow/vJGGhGTBLLi1E4tPZRiP0mvPtaWQadUonzccHDRPTmyH1p+bib2lLWYGGXsNI6Ad9dM1+qP7zJSC7S54CNULPMrsNJXnI+tr6Ia7Hm8fzD1Xb5NG0zTpIwdSEJtG8gKH5r12RiOHGmZgdftzf9XIVxHtjFJQoLoiB9IIbB1m2ebBp88VdNycycsHRX3QM/9E9PKrgNrF6Ddg5s2SBkC8422As4HZpSJoHz5R8gsUoL23ihzz3sQTmvj22pYuTqHwABkkww/7v2Huly1jVAZ5Z7xWSmF4BCqibFnfgVmkxgBSiNqvM2pgQ6sX061Qm1DRlDuMobsy4PApFm8TNIMHQsb27PstA2LJ94IgHurOK3Ir6EUEQVBdu6c2G1JCkp3eZ+QWHPwbkdPW0oJFn/jVuA+bw4UQFispInaKSAr3sTqns9dPgjoQlGM/13NPwgmIN6quspLSMcI6AcNzJLRt0eXFSkw67kxVBFoYc7fKJjv6+QeO2cFcMRoRamzbh0DyLQDanq9XYmOLLiY3agC+BdHlJCAiPAiQ0yzcxP3uvYIHHkfbAhr6HH6Q/veeeEMKsTM09zTqfKTAK8HNrPGi1LUEKM5tBymm4w5U8Rc0v+76zQi1va9UFn5iIqs/K6nECO4AqWG/uD0wPFnpwt7LszCCteJoTkR96dVRI7ykpI068qNaTenXKrutbCv8fPRI2GdXwOAi3Wfb2378sIu6nKyvXM1D3v3Ok0HGnu9ayq1d20ZSIrd0gtOxPSySNaGYyDCqM9A4hqDnKYFieRsi4wmrNZkCnXvPn5w7MZE9Gm+cbHOL/AFIAWDg5BFEMiO0fGjg51CCCgsyDrvULakJie4PeVRFWPl+6JUxGSwM+2lMVHIZqTirNQF1SoXo4cTNpV5p7pZVjMyKCn25pb+DmQmWX/UOVu1eisRx4rp0km/dV/sLxAR49b9GgQtmjRhSLCcSa+Ks1NIsP+GWh26t1mM0aVkt6EPKZiRVzbwPyMy6TxWxELVEsqNVpt39JVN3gftL/xdASsECWS78tznHtQfCLt4p0sY7QZxThgr93l9ABhYUxxLzBlJ/0ierEYda7XMF9FdwF8dqEUqDOvmWZng7mYff/nUehxt7D/LabIbVxbPKrdyVrIB7EYWdxqes4DyvYcLHzqw9cPgvIgDkhsn3/xUUS4NrlKJ25cLe7wK6WHLD1ZLnwLsDXPX93ILJPeFlZIgE79Kl9GRVB4It+EsxIeoMVHU81OkyIe48QvzJUgAUmV8u3XfmikidVycfjn2FXeK4sAH+eB38evh4HW4olKbyu+K+vtTRg/0+yG1ciTBIOdc5S2HalbFm73oI5UoUkQNoflqk+p05jpinMzq6hPgsaccrLYqpj+hpBJ2ZCscAMynjV5gbP4boTO2Kx+u7kJzI2oRQZYURCKosXNOiRbO75fNngKyssMVHSEm1hJHzlfv0qJwaxpl8Q91G3VVF5l5mPTlmn4gKso+CTyWAYN3SH08GCKrF+xeSsb8Fo1+LbGGV1+mugY28Qh1pjovzwowXq6MU02JjrbsjBRm2GBTl3lspAbJP/4b0QGVXdLI3N54fvUT+m2t56xRPT8IlV8WoCS88wTZ9A2MCpSl+JAXZxIU6zcL2n9qjUGTOZmrJFzLl+FAhBnyK9K3/AertjJpJlxd+D/+lROl7ahTnAnvVQ0ShLeRLMFcZ6vjQL5vWszh7oV98urdntpx/HPvR/bNTG3k9fauvACnf6FBbC7dUUdDz1Jr5We9nrw1ObbqA0AAZg3Of4+8S+khQRcsXl1PIClN++TA1K6kWG98lXxoWLnnWGR2E/wNh4WoGYtpC2OEmRDsdJFAq+7op1amTcpZAEEJySRvy9AVgP9CPp7yV6m+u6zy9JQ+GjjO7d7fM1SL+SH6Ix2wQzQ2o9rfJDLPBQBcw+yr04cAcopjZs2XOuVWZN16rYbBjzJFDyHUE1soNz0BlRCLx+NYIS7e8UHJqvApZ3tm0bHiVSddu3/tVlZolPCS5CL5NcivA/RqOcWvgjqjaH/JlJqK5egCu1/K2KtXCVLSn2HyF7U1TwJaKS4vFP/Pql7TF63iKe7JnimXmV95PcUhF6X4CJ+4MznU0qA8/YjoOliL8vVeZZsRQ77p7+tghHuyiAkgcoZcXEhTYwwZAl/Ohv1LGgeGaiTejrxfDZekGXKdRmIDWY6f4/+CqLpqTX2QjNoo6fYOxRvbbBGJZ3tbEu5fh/DRDmXFDbjYzyF/MbI8nYt1PZzV5zGrXJ0DPZA8g+eNyZz32IMUSWVumOxXWypZv/ULF2P83mbz/lLB0uTFUz26DtLfw=="
}
}
},
"finish_reason": "stop"
}
],
"created": 1785496533,
"model": "google/gemini-3-flash-preview",
"object": "chat.completion",
"system_fingerprint": "",
"usage": {
"prompt_tokens": 8,
"completion_tokens": 190,
"total_tokens": 975,
"completion_tokens_details": {
"accepted_prediction_tokens": 0,
"audio_tokens": 0,
"image_tokens": 0,
"reasoning_tokens": 777,
"rejected_prediction_tokens": 0
},
"extra_properties": {
"google": {
"traffic_type": "ON_DEMAND"
}
}
}
}
MaaS平台gemini兼容的OpenAI协议API
MaaS平台实现的将openai格式和gemini原生格式的转换
请求协议
Https
| 参数名 |
值 |
| Authorization |
Bearer |
| Content-Type |
application/json |
请求url
https://genaiapi.cloudsway.net/v1/ai/{YOUR ENDPOINT}/chat/completions
请求Demo
请求:
curl --location --request POST 'https://genaiapi.cloudsway.net/v1/ai/{your endpointpath}/chat/completions' \
--header 'Authorization: Bearer ${your_ak}' \
--data-raw '{
"messages": [
{
"role": "user",
"content": "编写一篇150字的寓言"
}
],
"model": "gemini-3-flash-preview",
"stream": false,
"temperature": 0.2,
"thinking": {
"type": "enabled",
"thinking_level": "low"
}
}'
响应结果
{
"id": "chatcmpl-dA7C2L15OJ9mBvtsGosCLLvu",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "**《河流与岩石》**\n\n山谷里有一块巨大的岩石,它总是嘲笑身边的溪流:“你这软弱的东西,碰我一下就碎了,只能绕着我走。”溪流不语,只是静静地流淌,日复一日地轻抚着岩石的棱角。\n\n多年后,山洪暴发,岩石被长年累月的冲刷磨去了棱角,变得圆润矮小,最终被卷入泥沙。而那条溪流,依然清澈地奔向远方。\n\n岩石临终前感叹:“原来,真正的力量不在于外表的坚硬,而在于持久的耐心。”\n\n**寓意:滴水穿石,柔能克刚。**",
"reasoning_details": [
{
"type": "content",
"text": "**《河流与岩石》**\n\n山谷里有一块巨大的岩石,它总是嘲笑身边的溪流:“你这软弱的东西,碰我一下就碎了,只能绕着我走。”溪流不语,只是静静地流淌,日复一日地轻抚着岩石的棱角。\n\n多年后,山洪暴发,岩石被长年累月的冲刷磨去了棱角,变得圆润矮小,最终被卷入泥沙。而那条溪流,依然清澈地奔向远方。\n\n岩石临终前感叹:“原来,真正的力量不在于外表的坚硬,而在于持久的耐心。”\n\n**寓意:滴水穿石,柔能克刚。**",
"signature": "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"
}
],
"reasoning_content": "**My Thought Process for Crafting a Fable**\n\nRight, so the task at hand is to create a fable, a short story specifically designed to impart a moral lesson. I'm aiming for a character count of around 150 Chinese characters – concise but impactful.\n\nMy first inclination is to consider existing fables. \"The Fox and the Grapes\" immediately springs to mind, but it's so ubiquitous, I feel it would lack originality. \"The Oak and the Reed\" is another classic, highlighting resilience through flexibility, which is a strong theme. However, I'm leaning towards something fresh, even if the core concept might be familiar.\n\nI start brainstorming potential themes and pairs for my fable. \"The Clock and the Sundial\" could explore the tension between tradition and modernity. \"The Eagle and the Mole\" offers a perspective-based narrative. Then, \"The River and the Rock\" comes into focus. This seems promising. It encapsulates the age-old tension between brute force and persistent, subtle influence. It's a theme that lends itself well to a brief, powerful narrative.\n\nSo, I decide to go with \"The River and the Rock.\" The core idea is already quite clear: the rock, with its perceived strength and pride, is ultimately worn down by the seemingly \"weak\" river's persistent flow. It's a classic paradox, easily digestible.\n\nI mentally sketch out the narrative arc. The rock, full of arrogance, scoffs at the river's gentleness. The river, in contrast, simply continues its course, gently eroding the rock over time. The climax would be a natural event, like a flood, that demonstrates the river's enduring power and the rock's eventual degradation. The moral, of course, needs to be explicitly stated, something along the lines of \"softness overcomes hardness\" or \"persistence prevails.\"\n\nI start drafting in Chinese, focusing on vivid imagery and directness. I want the rock's pride to be palpable, and the river's quiet determination to be its counterpoint.\n\nHere's the draft I arrived at:\n\n\"In a valley, there was a giant rock, which always mocked the nearby stream: 'You weak thing, you'd shatter if you hit me.' The stream remained silent, flowing quietly, day after day, gently caressing the rock's edges. Many years later, a mountain flood broke out; the rock was washed smooth and small, eventually turning into mud and sand. And that stream, still clear, rushed towards the distance. As the rock was dissolving, it sighed: 'So, true strength isn't in hardness, but in persistent patience.' Moral: Dripping water wears through stone; gentleness conquers hardness.\"\n\nI then do a quick character count, and it's around 135 characters – perfectly within my target. The title is straightforward: \"The River and the Rock.\" The story flows, the characters are established, and the moral is clear and concise, encapsulating the essence of the fable. I feel this fulfills the brief admirably.\n\n"
},
"finish_reason": "stop",
"native_finish_reason": "STOP"
}
],
"created": 1785497001,
"model": "MaaS_Ge_3_flash_preview_20251217",
"object": "chat.completion",
"usage": {
"prompt_tokens": 8,
"completion_tokens": 752,
"total_tokens": 760,
"completion_tokens_details": {
"accepted_prediction_tokens": 0,
"audio_tokens": 0,
"image_tokens": 0,
"reasoning_tokens": 588,
"rejected_prediction_tokens": 0
},
"prompt_tokens_details": {
"audio_tokens": 0,
"audio_cached_tokens": 0,
"cached_tokens": 0,
"image_tokens": 0
}
}
}