技术博客
语文教育 / 内容创作类 AI 助手如何调用成语词典?

语文教育 / 内容创作类 AI 助手如何调用成语词典?

作者: 万维易源
2026-09-03
成语词典AI助手防幻觉MCP
# 语文教育 / 内容创作类 AI 助手如何调用成语词典? > 接口:成语词典(apiCode=2964) · 接入点:全接入点 · 是否免费:是 · 请求方式:POST/GET · 返回格式:JSON · 适用人群:AI 应用开发者、内容创作者 · 阅读时间:约 6 分钟 ## 核心要点 - 让 AI 助手「用真实数据替代模型幻觉」:需要成语释义/出处时,调用接口而非靠模型现编。 - 两条路:① 在 Agent 工具集里封装成语查询工具;② 通过 MCP 让支持 MCP 的客户端直接调用。 - 返回结构化的拼音/解释/出处/示例,可直接塞进提示词或回复卡片。 ## Why:为什么 AI 要接真实成语数据 大模型讲成语经常「张冠李戴」——把出处安错书、把释义编走样。成语词典提供官方结构化释义,让 AI 在引用成语时「有据可依」,显著提升内容可信度,尤其适合语文教育、写作辅助类助手。 ## What:两种集成方式 | 方式 | 适用 | 说明 | |------|------|------| | Agent 工具封装 | 自建 Agent / 函数调用 | 把「搜索/详情/随机」包成 tool,模型按需调用 | | MCP | Cherry Studio / ChatBox 等 | 配置 MCP JSON,客户端内直接调用(见[MCP 篇](https://www.showapi.com/guides/idiom-mcp-integration-2964)) | ## How:在 Agent 里封装查询工具 ```python import requests, json APPKEY = "YOUR_APPKEY" def idiom_tool(action, value): """AI 可调用的成语工具:action=search|detail|random""" if action == "search": url = "https://route.showapi.com/2964-1" body = requests.get(url, params={"appKey": APPKEY, "keyword": value, "page": "1"}, timeout=10).json()["showapi_res_body"] return [it["word"] for it in body["list"]] if action == "detail": url = "https://route.showapi.com/2964-2" body = requests.post(url, data={"appKey": APPKEY, "id": value}, timeout=10).json()["showapi_res_body"] return {k: body.get(k) for k in ("word","pinyin","explain","derivation","sample")} # random body = requests.post("https://route.showapi.com/2964-3", data={"appKey": APPKEY}, timeout=10).json()["showapi_res_body"] return {k: body.get(k) for k in ("word","pinyin","explain","derivation","sample")} # 把结果拼进提示词,让模型基于真实数据作答 tool_schema = { "name": "idiom_lookup", "description": "查询成语的拼音、解释、出处、示例。需要准确成语资料时调用,不要凭记忆编造。", "parameters": {"type":"object","properties":{ "action":{"type":"string","enum":["search","detail","random"]}, "value":{"type":"string","description":"成语名或 id"}}} } ``` ### 提示词要点 > 当用户问到某个成语的意思/出处时,**必须**先调用 `idiom_lookup` 拿到真实数据再回答,禁止仅凭记忆生成释义或出处。 ## 进阶 / 边界 - **防幻觉纪律**:在 system prompt 明确「释义/出处以接口返回为准」,并对缺失字段如实说明,不补全。 - **MCP 更省事**:若你的客户端支持 MCP,直接配官方 MCP JSON 即可让 Agent 自助调用,免去自行封装(见[MCP 篇](https://www.showapi.com/guides/idiom-mcp-integration-2964))。 - **缓存**:热门成语可缓存([缓存策略](https://www.showapi.com/guides/idiom-pagination-cache-2964)),降延迟与调用。 ## FAQ **Q:模型自己不会讲成语吗,为什么还要接接口?** 会,但容易编造出处/释义。接真实数据可消除幻觉,提升可信度。 **Q:MCP 和工具封装选哪个?** 客户端支持 MCP 就直接用 MCP(最省事);自建 Agent 函数调用就封装 tool。 **Q:接口返回字段不全怎么办?** 缺失字段如实告知用户,不要替接口补全。 **Q:免费接口能扛 AI 的高频调用吗?** 建议加缓存与限流(见[免费与配额](https://www.showapi.com/guides/idiom-free-api-cost-2964))。 ## 相关能力 / 下一步阅读 - [通过 MCP 在 Cherry Studio / ChatBox 中直接用成语词典](https://www.showapi.com/guides/idiom-mcp-integration-2964) - [成语详情字段详解:拼音 / 解释 / 出处 / 示例如何呈现给用户](https://www.showapi.com/guides/idiom-detail-fields-2964) - [导入 Postman / Swagger:用 OpenAPI 文档管理成语词典接口](https://www.showapi.com/guides/idiom-openapi-import-2964) - **本系列共 15 篇**:查看[成语词典(apiCode=2964)官方指南总目录](https://www.showapi.com/guides/idiom-dictionary-guides-2964)