849 lines
122 KiB
HTML
849 lines
122 KiB
HTML
<!doctype html><script>(function(e,t,n,s,o){e[s]=e[s]||[],e[s].push({"gtm.start":(new Date).getTime(),event:"gtm.js"});var a=t.getElementsByTagName(n)[0],i=t.createElement(n),r=s!="dataLayer"?"&l="+s:"";i.async=!0,i.src="https://www.googletagmanager.com/gtm.js?id="+o+r,a.parentNode.insertBefore(i,a)})(window,document,"script","dataLayer","GTM-W9HPZZ22")</script><html lang=zh-cn><head><meta charset=utf-8><title>对话接口 | FastGPT</title><meta name=viewport content="width=device-width,initial-scale=1"><meta name=description content="FastGPT OpenAPI 对话接口"><meta name=keywords content="Documentation,Hugo,Hugo Theme,Bootstrap"><meta name=author content="Colin Wilson - Lotus Labs"><meta name=email content="support@aigis.uk"><meta name=website content="https://lotusdocs.dev"><meta name=Version content="v0.1.0"><link rel=icon href=https://doc.tryfastgpt.ai/favicon.ico sizes=any><link rel=icon type=image/svg+xml href=https://doc.tryfastgpt.ai/favicon.svg><link rel=apple-touch-icon sizes=180x180 href=https://doc.tryfastgpt.ai/apple-touch-icon.png><link rel=icon type=image/png sizes=32x32 href=https://doc.tryfastgpt.ai/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=https://doc.tryfastgpt.ai/favicon-16x16.png><link rel=manifest crossorigin=use-credentials href=https://doc.tryfastgpt.ai/site.webmanifest><meta property="og:title" content="对话接口"><meta property="og:description" content="FastGPT OpenAPI 对话接口"><meta property="og:type" content="article"><meta property="og:url" content="https://doc.tryfastgpt.ai/docs/development/openapi/chat/"><meta property="og:image" content="https://doc.tryfastgpt.ai/opengraph/card-base-2_hu06b1a92291a380a0d2e0ec03dab66b2f_17642_filter_8170629151868008965.png"><meta property="article:section" content="docs"><meta name=twitter:card content="summary_large_image"><meta name=twitter:image content="https://doc.tryfastgpt.ai/opengraph/card-base-2_hu06b1a92291a380a0d2e0ec03dab66b2f_17642_filter_8170629151868008965.png"><meta name=twitter:title content="对话接口"><meta name=twitter:description content="FastGPT OpenAPI 对话接口"><script>(()=>{var t=window.matchMedia&&window.matchMedia("(prefers-color-scheme: dark)").matches,e=localStorage.getItem("theme");t&&e===null&&(localStorage.setItem("theme","dark"),document.documentElement.setAttribute("data-dark-mode","")),t&&e==="dark"&&document.documentElement.setAttribute("data-dark-mode",""),e==="dark"&&document.documentElement.setAttribute("data-dark-mode","")})()</script><link rel=preconnect href=https://gstatic.loli.net/><link rel=preconnect href=https://gstatic.loli.net/ crossorigin><link href="https://fonts.loli.net/css?family=Inter:300,400,600,700|Fira+Code:500,700|JetBrains+Mono:500,700&display=block" rel=stylesheet><link rel=stylesheet href=/docs/scss/style.min.0ec826a837202d1bb0cc402457fc3b09de1d00673bd1fea8591ce85da15706ba66db8c4b0243747a2179524215798bcd.css integrity=sha384-DsgmqDcgLRuwzEAkV/w7Cd4dAGc70f6oWRzoXaFXBrpm24xLAkN0eiF5UkIVeYvN crossorigin=anonymous><script data-id=umami-script async src=https://umami.fastgpt.in/fastgpt data-website-id=69b3f2c6-39a5-4937-b92d-6fdd5c8f5958></script><script type=text/javascript>document.querySelector('script[data-id="umami-script"]').addEventListener("load",function(){const e=document.head.querySelector('meta[property = "og:type"]').getAttribute("content");let t=document.head.querySelector('meta[property = "og:title"]').getAttribute("content"),n=document.head.querySelector('meta[property = "og:url"]').getAttribute("content");umami.track(e+":"+t,{url:n})})</script><script defer>function loadAnalyticsScript(){var e=document.createElement("script");e.async=!0,e.src="https://gaxy.fastgpt.in/gtag/js?id=G-KGYF44Y7TT",document.head.appendChild(e),window.dataLayer=window.dataLayer||[];function t(){dataLayer.push(arguments)}t("js",new Date),t("config","G-KGYF44Y7TT"),window.removeEventListener("scroll",onScrollLoadAnalytics)}function onScrollLoadAnalytics(){window.scrollY>100&&loadAnalyticsScript()}window.addEventListener("scroll",onScrollLoadAnalytics)</script><script defer>function loadScriptOnScroll(){var e,t,n,s=window.scrollY||window.pageYOffset;s>100&&(n=n||[],e=document.createElement("script"),e.src="https://hm.baidu.com/hm.js?537c7867df8f9ae2e7147284ec0dbfdd",t=document.getElementsByTagName("script")[0],t.parentNode.insertBefore(e,t),window.removeEventListener("scroll",loadScriptOnScroll))}window.addEventListener("scroll",loadScriptOnScroll)</script><script defer>function loadClarityScript(){(function(e,t,n,s,o,i,a){e[n]=e[n]||function(){(e[n].q=e[n].q||[]).push(arguments)},i=t.createElement(s),i.async=1,i.src="https://www.clarity.ms/tag/"+o,a=t.getElementsByTagName(s)[0],a.parentNode.insertBefore(i,a)})(window,document,"clarity","script","mjgug8s1pf"),window.removeEventListener("scroll",onScrollLoadClarity)}function onScrollLoadClarity(){window.scrollY>100&&loadClarityScript()}window.addEventListener("scroll",onScrollLoadClarity)</script><link rel=preload href=https://cdn.jsdelivr.net/npm/lxgw-wenkai-screen-webfont@1.1.0/style.css as=style><link rel=stylesheet href=https://cdn.jsdelivr.net/npm/lxgw-wenkai-screen-webfont@1.1.0/style.css></head><body><noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-W9HPZZ22" height=0 width=0 style=display:none;visibility:hidden></iframe></noscript><div class=content><div class="page-wrapper toggled"><nav id=sidebar class=sidebar-wrapper><div class=sidebar-brand><a href=https://tryfastgpt.ai/ aria-label=HomePage alt=HomePage style=text-transform:unset><svg width="26" height="26" viewBox="0 0 1041 1348" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M340.837.33933 681.068.338989V.455643C684.032.378397 686.999.339702 689.967.339702 735.961.3397 781.504 9.62899 823.997 27.6772 866.49 45.7254 905.099 72.1791 937.622 105.528 970.144 138.877 995.942 178.467 1013.54 222.04 1031.14 265.612 1040.2 312.312 1040.2 359.474H340.836V1347.84C296.157 1347.84 251.914 1338.55 210.636 1320.49 169.357 1302.43 131.85 1275.95 100.257 1242.58 68.6636 1209.21 43.6023 1169.59 26.5041 1125.99 11.3834 1087.43 2.75216 1046.42.957956 1004.81H.605869L.605897 368.098H.70363c-.597878-26.267 1.53378-52.655 6.43943-78.687C20.2709 219.745 52.6748 155.754 100.257 105.528 147.839 55.3017 208.462 21.0975 274.461 7.24017 296.426 2.62833 318.657.339101 340.837.33933z" fill="url(#paint0_linear_1172_228)"/><path d="M633.639 904.645H513.029V576.37H635.422V576.377C678.161 576.607 720.454 585.093 759.951 601.37 799.997 617.874 836.384 642.064 867.033 672.559c30.65 30.495 54.963 66.698 71.55 106.542C955.171 818.944 963.709 861.648 963.709 904.775H633.639V904.645z" fill="url(#paint1_linear_1172_228)"/><defs><linearGradient id="paint0_linear_1172_228" x1="520.404" y1=".338989" x2="520.404" y2="1347.84" gradientUnits="userSpaceOnUse"><stop stop-color="#326dff"/><stop offset="1" stop-color="#8eaeff"/></linearGradient><linearGradient id="paint1_linear_1172_228" x1="738.369" y1="576.37" x2="738.369" y2="904.775" gradientUnits="userSpaceOnUse"><stop stop-color="#326dff"/><stop offset="1" stop-color="#8eaeff"/></linearGradient></defs></svg>
|
||
FastGPT</a></div><div class=sidebar-content style="height:calc(100% - 131px)"><ul class=sidebar-menu><li><a class=sidebar-root-link href=https://doc.tryfastgpt.ai/docs/intro/><i class="material-icons me-2">rocket_launch</i>
|
||
快速了解 FastGPT</a></li><li class=sidebar-dropdown><button class=btn>
|
||
<i class="material-icons me-2">import_contacts</i>
|
||
功能介绍</button><div class=sidebar-submenu><ul><li class="sidebar-dropdown nested"><button class=btn>
|
||
基础教程</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/course/quick-start/>快速上手</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/course/ai_settings/>AI 相关参数配置说明</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/course/chat_input_guide/>对话问题引导</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/course/collection_tags/>知识库集合标签</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/course/fileinput/>文件输入功能介绍</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
工作台</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/basic-mode/>简易模式</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/intro/>工作流&插件</a></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
工作流节点</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/ai_chat/>AI 对话</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/dataset_search/>知识库搜索</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/tool/>工具调用&终止</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/question_classify/>问题分类</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/content_extract/>文本内容提取</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/user-selection/>用户选择</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/form_input/>表单输入</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/text_editor/>文本拼接</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/reply/>指定回复</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/document_parsing/>文档解析</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/http/>HTTP 请求</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/tfswitch/>判断器</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/variable_update/>变量更新</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/sandbox/>代码运行</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/loop/>批量运行</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/knowledge_base_search_merge/>知识库搜索引用合并</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/coreferenceresolution/>问题优化</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/laf/>Laf 函数调用</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/workflow/custom_feedback/>自定义反馈</a></li></ul></div></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/mcp_server/>MCP 服务</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/mcp_tools/>MCP 工具集</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dashboard/gapier/>使用 Gapier 快速导入Agent工具</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
系统插件</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/plugins/how_to_submit_system_plugin/>如何提交系统插件</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/plugins/searxng_plugin_guide/>SearXNG 搜索插件配置与使用说明</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/plugins/google_search_plugin_guide/>Google 搜索插件填写说明</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/plugins/bing_search_plugin/>Bing 搜索插件填写说明</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/plugins/doc2x_plugin_guide/>Doc2x 插件填写说明</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
知识库</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/knowledge_base/rag/>知识库基础原理介绍</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/knowledge_base/dataset_engine/>知识库搜索方案和参数</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/knowledge_base/api_dataset/>API 文件库</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/knowledge_base/lark_dataset/>飞书知识库</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/knowledge_base/yuque_dataset/>语雀文件库</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/knowledge_base/websync/>Web 站点同步</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/knowledge_base/externalfile/>外部文件知识库</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
团队与权限</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/team_permissions/team_roles_permissions/>团队&成员组&权限</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/team_permissions/invitation_link/>邀请链接说明文档</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
对话框</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dialogboxes/htmlrendering/>对话框与HTML渲染</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/dialogboxes/quotelist/>知识库引用分块阅读器</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
商业版后台</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/admin/sso/>SSO & 外部成员同步</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/guide/admin/teammode/>团队模式说明文档</a></li></ul></div></li></ul></div></li><li class=sidebar-dropdown><button class=btn>
|
||
<i class="material-icons me-2">cases</i>
|
||
使用案例</button><div class=sidebar-submenu><ul><li class="sidebar-dropdown nested"><button class=btn>
|
||
外部调用 FastGPT</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/external-integration/openapi/>通过 API 访问应用</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/external-integration/feishu/>接入飞书机器人教程</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/external-integration/dingtalk/>接入钉钉机器人教程</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/external-integration/official_account/>接入微信公众号教程</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/external-integration/onwechat/>对接 chatgpt-on-wechat</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/external-integration/wechat/>接入微信和企业微信</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/external-integration/iframe_integration/>iframe 接入</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
应用搭建案例</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/submit_application_template/>如何提交应用模板</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/translate-subtitle-using-gpt/>长字幕翻译</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/multi_turn_translation_bot/>多轮翻译机器人</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/english_essay_correction_bot/>英语作文纠错机器人</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/fixingevidence/>固定开头和结尾内容</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/lab_appointment/>实验室预约</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/dalle3/>Dalle3 绘图</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/google_search/>接入谷歌搜索</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/use-cases/app-cases/feishu_webhook/>发送飞书webhook通知</a></li></ul></div></li></ul></div></li><li class="sidebar-dropdown current active"><button class=btn>
|
||
<i class="material-icons me-2">code_blocks</i>
|
||
开发与部署指南</button><div class="sidebar-submenu d-block"><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/intro/>快速开始本地开发</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/sealos/>Sealos 一键部署</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/docker/>Docker Compose 快速部署</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/configuration/>配置文件介绍</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/faq/>私有部署常见问题</a></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
模型配置方案</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/modelconfig/intro/>FastGPT 模型配置说明</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/modelconfig/ai-proxy/>通过 AI Proxy 接入模型</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/modelconfig/one-api/>通过 OneAPI 接入模型</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/modelconfig/siliconcloud/>通过 SiliconCloud 体验开源模型</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/modelconfig/ppio/>通过 PPIO LLM API 接入模型</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
版本更新/升级操作</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/intro/>升级说明</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4911/>V4.9.11(进行中)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4910/>V4.9.10</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/499/>V4.9.9</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/498/>V4.9.8</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/497/>V4.9.7</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/496/>V4.9.6</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/495/>V4.9.5</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/494/>V4.9.4</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/493/>V4.9.3</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/492/>V4.9.2</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/491/>V4.9.1</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/490/>V4.9.0(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4823/>V4.8.23</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4822/>V4.8.22(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4821/>V4.8.21</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4820/>V4.8.20(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4819/>V4.8.19(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4818/>V4.8.18(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4817/>V4.8.17(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4816/>V4.8.16(更新配置文件)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4815/>V4.8.15(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4814/>V4.8.14</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4813/>V4.8.13</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4812/>V4.8.12(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4811/>V4.8.11(商业版初始化)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/4810/>V4.8.10(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/489/>V4.8.9(需要初始化)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/488/>V4.8.8(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/487/>V4.8.7</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/486/>V4.8.6(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/485/>V4.8.5(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/484/>V4.8.4(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/483/>V4.8.3</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/482/>V4.8.2</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/481/>V4.8.1(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/48/>V4.8</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/471/>V4.7.1(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/47/>V4.7(需要初始化)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/469/>V4.6.9(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/468/>V4.6.8(需要初始化)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/467/>V4.6.7(需要初始化)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/466/>V4.6.6(需要改配置文件)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/465/>V4.6.5(需要改配置文件)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/464/>V4.6.4(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/463/>V4.6.3(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/462/>V4.6.2(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/461/>V4.6.1</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/46/>V4.6(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/452/>V4.5.2</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/451/>V4.5.1(需进行初始化)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/45/>V4.5(需进行较为复杂更新)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/447/>V4.4.7(需执行升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/446/>V4.4.6</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/445/>V4.4.5(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/442/>升级到 V4.4.2(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/441/>升级到 V4.4.1(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/44/>升级到 V4.4(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/43/>升级到 V4.3(包含升级脚本)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/421/>升级到 V4.2.1</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/42/>升级到 V4.2</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/41/>升级到 V4.1</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/upgrading/40/>升级到 V4.0</a></li></ul></div></li><li class="sidebar-dropdown nested current active"><button class=btn>
|
||
OpenAPI 接口文档</button><div class="sidebar-submenu d-block"><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/openapi/intro/>OpenAPI 介绍</a></li><li class=current><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/openapi/chat/>对话接口</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/openapi/dataset/>知识库接口</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/openapi/share/>分享链接身份鉴权</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
本地模型使用</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/custom-models/marker/>接入 Marker PDF 文档解析</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/custom-models/xinference/>使用 Xinference 接入本地模型</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/custom-models/bge-rerank/>接入 bge-rerank 重排模型</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/custom-models/chatglm2/>接入 ChatGLM2-6B</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/custom-models/m3e/>接入 M3E 向量模型</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/custom-models/chatglm2-m3e/>接入 ChatGLM2-m3e 模型</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/custom-models/ollama/>使用 Ollama 接入本地模型</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
代理方案</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/proxy/nginx/>Nginx 中转</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/proxy/http_proxy/>HTTP 代理中转</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/proxy/cloudflare/>Cloudflare Worker 中转</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
迁移&备份</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/migration/docker_mongo/>Docker Mongo迁移(dump模式)</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/migration/docker_db/>Docker 数据库迁移(无脑操作)</a></li></ul></div></li><li class="sidebar-dropdown nested"><button class=btn>
|
||
设计方案</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/development/design/dataset/>数据集</a></li></ul></div></li></ul></div></li><li class=sidebar-dropdown><button class=btn>
|
||
<i class="material-icons me-2">quiz</i>
|
||
FAQ</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/docker/>Docker 部署问题</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/privatedeploy/>私有部署常见问题</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/chat/>聊天框问题</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/app/>应用使用问题</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/dataset/>知识库使用问题</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/external_channel_integration/>接入外部渠道</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/error/>报错</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/points_consumption/>积分消耗</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/faq/other/>其他问题</a></li></ul></div></li><li class=sidebar-dropdown><button class=btn>
|
||
<i class="material-icons me-2">shopping_cart</i>
|
||
收费说明</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/shopping_cart/saas/>线上版定价</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/shopping_cart/intro/>商业版</a></li></ul></div></li><li class=sidebar-dropdown><button class=btn>
|
||
<i class="material-icons me-2">handshake</i>
|
||
协议</button><div class=sidebar-submenu><ul><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/agreement/open-source/>开源协议</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/agreement/terms/>服务协议</a></li><li><a class=sidebar-nested-link href=https://doc.tryfastgpt.ai/docs/agreement/privacy/>隐私政策</a></li></ul></div></li><li><a class=sidebar-root-link href=https://doc.tryfastgpt.ai/docs/community/><i class="material-icons me-2">forum</i>
|
||
加入社区</a></li></ul></div><ul class="sidebar-footer list-unstyled mb-0"></ul></nav><main class="page-content bg-transparent"><div id=top-header class="top-header d-print-none"><div class="header-bar d-flex justify-content-between"><div class="d-flex align-items-center"><a href=https://tryfastgpt.ai/ class="logo-icon me-3" aria-label=HomePage alt=HomePage><div class=small><svg width="26" height="26" viewBox="0 0 1041 1348" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M340.837.33933 681.068.338989V.455643C684.032.378397 686.999.339702 689.967.339702 735.961.3397 781.504 9.62899 823.997 27.6772 866.49 45.7254 905.099 72.1791 937.622 105.528 970.144 138.877 995.942 178.467 1013.54 222.04 1031.14 265.612 1040.2 312.312 1040.2 359.474H340.836V1347.84C296.157 1347.84 251.914 1338.55 210.636 1320.49 169.357 1302.43 131.85 1275.95 100.257 1242.58 68.6636 1209.21 43.6023 1169.59 26.5041 1125.99 11.3834 1087.43 2.75216 1046.42.957956 1004.81H.605869L.605897 368.098H.70363c-.597878-26.267 1.53378-52.655 6.43943-78.687C20.2709 219.745 52.6748 155.754 100.257 105.528 147.839 55.3017 208.462 21.0975 274.461 7.24017 296.426 2.62833 318.657.339101 340.837.33933z" fill="url(#paint0_linear_1172_228)"/><path d="M633.639 904.645H513.029V576.37H635.422V576.377C678.161 576.607 720.454 585.093 759.951 601.37 799.997 617.874 836.384 642.064 867.033 672.559c30.65 30.495 54.963 66.698 71.55 106.542C955.171 818.944 963.709 861.648 963.709 904.775H633.639V904.645z" fill="url(#paint1_linear_1172_228)"/><defs><linearGradient id="paint0_linear_1172_228" x1="520.404" y1=".338989" x2="520.404" y2="1347.84" gradientUnits="userSpaceOnUse"><stop stop-color="#326dff"/><stop offset="1" stop-color="#8eaeff"/></linearGradient><linearGradient id="paint1_linear_1172_228" x1="738.369" y1="576.37" x2="738.369" y2="904.775" gradientUnits="userSpaceOnUse"><stop stop-color="#326dff"/><stop offset="1" stop-color="#8eaeff"/></linearGradient></defs></svg></div><div class=big><svg width="26" height="26" viewBox="0 0 1041 1348" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M340.837.33933 681.068.338989V.455643C684.032.378397 686.999.339702 689.967.339702 735.961.3397 781.504 9.62899 823.997 27.6772 866.49 45.7254 905.099 72.1791 937.622 105.528 970.144 138.877 995.942 178.467 1013.54 222.04 1031.14 265.612 1040.2 312.312 1040.2 359.474H340.836V1347.84C296.157 1347.84 251.914 1338.55 210.636 1320.49 169.357 1302.43 131.85 1275.95 100.257 1242.58 68.6636 1209.21 43.6023 1169.59 26.5041 1125.99 11.3834 1087.43 2.75216 1046.42.957956 1004.81H.605869L.605897 368.098H.70363c-.597878-26.267 1.53378-52.655 6.43943-78.687C20.2709 219.745 52.6748 155.754 100.257 105.528 147.839 55.3017 208.462 21.0975 274.461 7.24017 296.426 2.62833 318.657.339101 340.837.33933z" fill="url(#paint0_linear_1172_228)"/><path d="M633.639 904.645H513.029V576.37H635.422V576.377C678.161 576.607 720.454 585.093 759.951 601.37 799.997 617.874 836.384 642.064 867.033 672.559c30.65 30.495 54.963 66.698 71.55 106.542C955.171 818.944 963.709 861.648 963.709 904.775H633.639V904.645z" fill="url(#paint1_linear_1172_228)"/><defs><linearGradient id="paint0_linear_1172_228" x1="520.404" y1=".338989" x2="520.404" y2="1347.84" gradientUnits="userSpaceOnUse"><stop stop-color="#326dff"/><stop offset="1" stop-color="#8eaeff"/></linearGradient><linearGradient id="paint1_linear_1172_228" x1="738.369" y1="576.37" x2="738.369" y2="904.775" gradientUnits="userSpaceOnUse"><stop stop-color="#326dff"/><stop offset="1" stop-color="#8eaeff"/></linearGradient></defs></svg></div></a><button id=close-sidebar class="btn btn-icon btn-soft">
|
||
<span class="material-icons size-20 menu-icon align-middle">menu</span></button>
|
||
<span><div id=docsearch></div></span></div><div class="d-flex align-items-center"><ul class="list-unstyled mb-0"><li class="list-inline-item mb-0"><a href=https://github.com/labring/FastGPT alt=github rel="noopener noreferrer" target=_blank><div class="btn btn-icon btn-default border-0"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><title>GitHub</title><path d="M9 19c-5 1.5-5-2.5-7-3m14 6v-3.87a3.37 3.37.0 00-.94-2.61c3.14-.35 6.44-1.54 6.44-7A5.44 5.44.0 0020 4.77 5.07 5.07.0 0019.91 1S18.73.65 16 2.48a13.38 13.38.0 00-7 0C6.27.65 5.09 1 5.09 1A5.07 5.07.0 005 4.77 5.44 5.44.0 003.5 8.55c0 5.42 3.3 6.61 6.44 7A3.37 3.37.0 009 18.13V22"/></svg></div></a></li><li class="list-inline-item mb-0"><a href=https://oss.laf.run/htr4n1-images/fastgpt-qr-code.jpg alt=wechat rel="noopener noreferrer" target=_blank><div class="btn btn-icon btn-default border-0"><svg xmlns="http://www.w3.org/2000/svg" width="28" height="28" viewBox="0 0 28 28" fill="none" stroke="currentcolor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><title>微信群</title><path d="M21.6696 15.9962C21.9464 15.9925 22.2107 15.881 22.4064 15.6853 22.6021 15.4896 22.7137 15.2252 22.7173 14.9485c0-.581-.465500000000002-1.0477-1.0477-1.0477C21.0875 13.9008 20.622 14.3675 20.622 14.9485c0 .583300000000001.4666 1.0477 1.0476 1.0477zm-5.1625.0C16.7839 15.9925 17.0482 15.881 17.2439 15.6853S17.5512 15.2252 17.5548 14.9485c0-.581-.466699999999999-1.0477-1.0477-1.0477C15.9238 13.9008 15.4595 14.3675 15.4595 14.9485c0 .583300000000001.4655 1.0477 1.0476 1.0477zm7.6615 5.88C24.0939 21.9177 24.0342 21.9818 23.9981 22.0594 23.9621 22.1369 23.9515 22.2239 23.968 22.3078 23.968 22.3638 23.968 22.421 23.9971 22.4793c.1144.486500000000003.343 1.2612.343 1.2904C24.3401 23.8548 24.3693 23.912 24.3693 23.9703 24.3693 24.0041 24.3626 24.0376 24.3496 24.0688 24.3367 24.1 24.3177 24.1284 24.2937 24.1522 24.2697 24.1761 24.2413 24.195 24.21 24.2078 24.1788 24.2206 24.1453 24.2272 24.1115 24.227 24.0531 24.227 24.0251 24.199 23.968 24.171L22.2775 23.1957C22.154 23.1277 22.0168 23.0886 21.8761 23.0813 21.791 23.0813 21.7046 23.0813 21.6475 23.1093 20.8448 23.3392 20.0141 23.4535 19.1263 23.4535c-4.27.0-7.7082-2.8665-7.7082-6.4225.0-3.5548 3.4382-6.4225 7.7082-6.4225 4.2688.0 7.707 2.8677 7.707 6.4225.0 1.9215-1.0313 3.6703-2.6647 4.8463V21.8762zM19.4518 9.44883C19.3429 9.44521 19.234 9.44327 19.1251 9.443c-4.8696.0-8.8736 3.3367-8.8736 7.5892.0.6463.0932999999999993 1.2716.266 1.8666H10.4136C9.39426 18.8885 8.38067 18.7442 7.39896 18.4695 7.31263 18.4403 7.22629 18.4403 7.13996 18.4403 6.96754 18.444 6.79921 18.4935 6.65229 18.5838L4.61296 19.7563C4.55463 19.7855 4.49746 19.8147 4.44029 19.8147 4.35703 19.8138 4.27744 19.7803 4.21856 19.7214 4.15968 19.6625 4.1262 19.5829 4.12529 19.4997 4.12529 19.4133 4.15329 19.3562 4.18246 19.2698 4.21046 19.2418 4.46946 18.2968 4.61296 17.7252 4.61296 17.6668 4.64096 17.5817 4.64096 17.5245 4.64065 17.4245 4.61721 17.3259 4.57248 17.2364 4.52775 17.147 4.46295 17.0691 4.38313 17.0088c-1.98217-1.4035-3.2165-3.4918-3.2165-5.8111.0-4.26187 4.165-7.6977 9.27497-7.6977 4.3925.0 8.085 2.5305 9.0102 5.94767V9.44883zM13.4388 9.9365c.6685.0 1.197-.5565 1.197-1.197.0-.6685-.528499999999999-1.197-1.197-1.197S12.2418 8.071 12.2418 8.7395 12.7703 9.9365 13.4388 9.9365zm-6.13667.0c.6685.0 1.19816-.5565 1.19816-1.197.0-.6685-.52966-1.197-1.19816-1.197-.66734.0-1.197.528499999999999-1.197 1.197s.52966 1.197 1.197 1.197z"/></svg></div></a></li><li class="list-inline-item mb-0"><a href=https://oss.laf.run/otnvvf-imgs/fastgpt-feishu1.png alt=lark rel="noopener noreferrer" target=_blank><div class="btn btn-icon btn-default border-0"><svg t="1728884315234" class="icon" viewBox="0 0 1224 1024" xmlns="http://www.w3.org/2000/svg" p-id="4847" width="28" height="28" fill="currentcolor"><path d="M1224.146926 401.768509a50.444385 50.444385.0 00-23.813954-38.631991c-6.095363-3.741292-61.752335-36.782364-141.475481-43.949671A317.253146 317.253146.0 00922.972928 336.16979L746.964061 25.579507A50.444385 50.444385.0 00703.077446.0H284.809419A50.444385 50.444385.0 00248.027055 84.97777c3.236848 3.447033 296.360763 315.739814 426.969683 459.653442-59.734559 55.762064-103.558119 83.800735-127.666331 96.832201L346.435643 500.639504a50.045034 50.045034.0 00-6.97814-4.098606L79.416697 314.205464A50.444385 50.444385.0 00.744475 364.124387c.210185 1.177036 20.619142 118.607361 42.036988 237.635091 44.033744 245.538045 48.994109 257.896919 52.272994 266.11515 5.065457 12.611096 14.334613 24.549601 44.895503 44.538188a595.916337 595.916337.0 0069.361029 38.337733c49.519571 23.603769 128.212812 54.437899 221.59798 67.25918a623.009175 623.009175.0 0085.061845 5.948234c131.491697.0 290.055215-44.138837 418.373119-211.404011 73.564728-96.054517 118.250046-163.944252 154.086578-218.592335 44.033745-67.070014 70.622139-107.551633 118.838564-150.177139a50.444385 50.444385.0 0016.877851-42.015969zM673.693591 100.88877 834.443032 384.638437a413.097477 413.097477.0 00-63.055481 59.356226c-8.743693 10.04684-17.256183 19.568218-25.579507 28.711263-89.559802-98.744884-248.774893-269.373017-344.619225-371.817156zM305.491617 882.125167c-59.86067-22.594881-102.065806-47.85911-118.523287-59.692523-10.299062-45.610132-39.935138-209.638457-65.829922-355.780044l391.238243 274.270325a48.132351 48.132351.0 006.725918 3.951477l189.166445 132.689752A398.300458 398.300458.0 01552.85827 921.702991c-97.336645 7.713787-188.262649-17.277202-247.366653-39.577824zm698.654734-343.442189c-34.932737 53.197808-78.398982 119.385045-149.819824 212.496972a503.371908 503.371908.0 01-58.641598 64.33761L637.499745 704.687042c35.31107-23.813953 81.152405-60.070855 135.905581-114.803013a48.342536 48.342536.0 0014.944149-15.154334c18.790533-19.379051 38.568936-40.859952 59.272153-64.694924 57.086229-65.745849 124.009113-96.243683 198.540692-90.673782a247.639894 247.639894.0 0138.589955 6.011289c-28.290893 33.62959-51.936698 69.63427-80.605924 113.3107z" p-id="4848"/></svg></div></a></li></ul><button id=mode class="btn btn-icon btn-default ms-2" type=button aria-label="Toggle user interface mode">
|
||
<span class=toggle-dark><svg xmlns="http://www.w3.org/2000/svg" height="30" width="30" viewBox="0 0 48 48" fill="currentcolor"><path d="M24 42q-7.5.0-12.75-5.25T6 24t5.25-12.75T24 6q.4.0.85.025.45.025 1.15.075-1.8 1.6-2.8 3.95t-1 4.95q0 4.5 3.15 7.65Q28.5 25.8 33 25.8q2.6.0 4.95-.925T41.9 22.3q.05.6.075.975Q42 23.65 42 24q0 7.5-5.25 12.75T24 42zm0-3q5.45.0 9.5-3.375t5.05-7.925q-1.25.55-2.675.825Q34.45 28.8 33 28.8q-5.75.0-9.775-4.025T19.2 15q0-1.2.25-2.575t.9-3.125q-4.9 1.35-8.125 5.475Q9 18.9 9 24q0 6.25 4.375 10.625T24 39zm-.2-14.85z"/></svg></span><span class=toggle-light><svg xmlns="http://www.w3.org/2000/svg" height="30" width="30" viewBox="0 0 48 48" fill="currentcolor"><path d="M24 31q2.9.0 4.95-2.05T31 24t-2.05-4.95T24 17t-4.95 2.05T17 24t2.05 4.95T24 31zm0 3q-4.15.0-7.075-2.925T14 24t2.925-7.075T24 14t7.075 2.925T34 24t-2.925 7.075T24 34zM3.5 25.5q-.65.0-1.075-.425Q2 24.65 2 24t.425-1.075Q2.85 22.5 3.5 22.5h5q.65.0 1.075.425Q10 23.35 10 24t-.425 1.075T8.5 25.5zm36 0q-.65.0-1.075-.425Q38 24.65 38 24t.425-1.075T39.5 22.5h5q.65.0 1.075.425Q46 23.35 46 24t-.425 1.075-1.075.425zM24 10q-.65.0-1.075-.425Q22.5 9.15 22.5 8.5v-5q0-.65.425-1.075Q23.35 2 24 2t1.075.425T25.5 3.5v5q0 .65-.425 1.075Q24.65 10 24 10zm0 36q-.65.0-1.075-.425T22.5 44.5v-5q0-.65.425-1.075Q23.35 38 24 38t1.075.425.425 1.075v5q0 .65-.425 1.075Q24.65 46 24 46zM12 14.1l-2.85-2.8q-.45-.45-.425-1.075.025-.625.425-1.075.45-.45 1.075-.45t1.075.45L14.1 12q.4.45.4 1.05.0.6-.4 1-.4.45-1.025.45T12 14.1zm24.7 24.75L33.9 36q-.4-.45-.4-1.075t.45-1.025q.4-.45 1-.45t1.05.45l2.85 2.8q.45.45.425 1.075-.025.625-.425 1.075-.45.45-1.075.45t-1.075-.45zM33.9 14.1q-.45-.45-.45-1.05.0-.6.45-1.05l2.8-2.85q.45-.45 1.075-.425.625.025 1.075.425.45.45.45 1.075t-.45 1.075L36 14.1q-.4.4-1.025.4t-1.075-.4zM9.15 38.85q-.45-.45-.45-1.075t.45-1.075L12 33.9q.45-.45 1.05-.45.6.0 1.05.45.45.45.45 1.05.0.6-.45 1.05l-2.8 2.85q-.45.45-1.075.425-.625-.025-1.075-.425zM24 24z"/></svg></span></button></div></div></div><div class=container-fluid><div class=layout-spacing><div class="d-md-flex justify-content-between align-items-center"><nav aria-label=breadcrumb class="d-inline-block pb-2 mt-1 mt-sm-0"><ul id=breadcrumbs class="breadcrumb bg-transparent mb-0" itemscope itemtype=https://schema.org/BreadcrumbList><li class="breadcrumb-item text-capitalize active" aria-current=page itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><a itemprop=item href=/docs/><i class="material-icons size-20 align-text-bottom" itemprop=name>Home</i></a><meta itemprop=position content="1"></li><li class="breadcrumb-item text-capitalize" itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><a itemprop=item href=/docs/development/><span itemprop=name>开发与部署指南</span></a><meta itemprop=position content="2"></li><li class="breadcrumb-item text-capitalize" itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><a itemprop=item href=/docs/development/openapi/><span itemprop=name>OpenAPI 接口文档</span></a><meta itemprop=position content="3"></li><li class="breadcrumb-item text-capitalize active" itemprop=itemListElement itemscope itemtype=https://schema.org/ListItem><span itemprop=name>对话接口</span><meta itemprop=position content="4"></li></ul></nav></div><div class="row flex-xl-nowrap"><div class="docs-toc col-xl-3 d-xl-block"><toc><div class="fw-bold text-uppercase mb-2">对话接口</div><nav id=toc><ul><li><a href=#如何获取-appid>如何获取 AppId</a></li><li><a href=#发起对话>发起对话</a><ul><li><a href=#请求简易应用和工作流>请求简易应用和工作流</a><ul><li><a href=#请求>请求</a></li><li><a href=#交互节点响应>交互节点响应</a></li><li><a href=#交互节点继续运行>交互节点继续运行</a></li></ul></li><li><a href=#请求插件>请求插件</a><ul><li><a href=#请求示例>请求示例</a></li><li><a href=#响应示例>响应示例</a></li></ul></li></ul></li><li><a href=#对话-crud>对话 CRUD</a><ul><li><a href=#历史记录>历史记录</a><ul><li><a href=#获取某个应用历史记录>获取某个应用历史记录</a></li><li><a href=#修改某个对话的标题>修改某个对话的标题</a></li><li><a href=#置顶--取消置顶>置顶 / 取消置顶</a></li><li><a href=#删除某个历史记录>删除某个历史记录</a></li><li><a href=#清空所有历史记录>清空所有历史记录</a></li></ul></li><li><a href=#对话记录>对话记录</a><ul><li><a href=#获取单个对话初始化信息>获取单个对话初始化信息</a></li><li><a href=#获取对话记录列表>获取对话记录列表</a></li><li><a href=#获取单个对话记录运行详情>获取单个对话记录运行详情</a></li><li><a href=#删除对话记录>删除对话记录</a></li><li><a href=#点赞--取消点赞>点赞 / 取消点赞</a></li><li><a href=#点踩--取消点踩>点踩 / 取消点踩</a></li></ul></li><li><a href=#猜你想问>猜你想问</a></li></ul></li></ul></nav></toc></div><div class="docs-toc-mobile d-print-none d-xl-none"><button id=toc-dropdown-btn class="btn-secondary dropdown-toggle" type=button data-bs-toggle=dropdown data-bs-offset=0,0 aria-expanded=false>
|
||
Table of Contents</button><nav id=toc-mobile><ul class=dropdown-menu><li><a href=#如何获取-appid>如何获取 AppId</a></li><li><a href=#发起对话>发起对话</a><ul><li><a href=#请求简易应用和工作流>请求简易应用和工作流</a><ul><li><a href=#请求>请求</a></li><li><a href=#交互节点响应>交互节点响应</a></li><li><a href=#交互节点继续运行>交互节点继续运行</a></li></ul></li><li><a href=#请求插件>请求插件</a><ul><li><a href=#请求示例>请求示例</a></li><li><a href=#响应示例>响应示例</a></li></ul></li></ul></li><li><a href=#对话-crud>对话 CRUD</a><ul><li><a href=#历史记录>历史记录</a><ul><li><a href=#获取某个应用历史记录>获取某个应用历史记录</a></li><li><a href=#修改某个对话的标题>修改某个对话的标题</a></li><li><a href=#置顶--取消置顶>置顶 / 取消置顶</a></li><li><a href=#删除某个历史记录>删除某个历史记录</a></li><li><a href=#清空所有历史记录>清空所有历史记录</a></li></ul></li><li><a href=#对话记录>对话记录</a><ul><li><a href=#获取单个对话初始化信息>获取单个对话初始化信息</a></li><li><a href=#获取对话记录列表>获取对话记录列表</a></li><li><a href=#获取单个对话记录运行详情>获取单个对话记录运行详情</a></li><li><a href=#删除对话记录>删除对话记录</a></li><li><a href=#点赞--取消点赞>点赞 / 取消点赞</a></li><li><a href=#点踩--取消点踩>点踩 / 取消点踩</a></li></ul></li><li><a href=#猜你想问>猜你想问</a></li></ul></li></ul></nav></div><div class="docs-content col-12 col-xl-9 mt-0"><div class="mb-0 d-flex"><i class="material-icons title-icon me-2">chat</i><h1 class="content-title mb-0">对话接口</h1></div><p class="lead mb-3">FastGPT OpenAPI 对话接口</p><div id=content class=main-content data-bs-spy=scroll data-bs-root-margin="0px 0px -65%" data-bs-target=#toc-mobile><div data-prismjs-copy data-prismjs-copy-success data-prismjs-copy-error><h1 id=如何获取-appid>如何获取 AppId <a href=#%e5%a6%82%e4%bd%95%e8%8e%b7%e5%8f%96-appid class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h1><p>可在应用详情的路径里获取 AppId。</p><p><img src=https://cdn.jsdelivr.net/gh/yangchuansheng/fastgpt-imgs@main/imgs/appid.png alt loading=lazy class=medium-zoom-image></p><h1 id=发起对话>发起对话 <a href=#%e5%8f%91%e8%b5%b7%e5%af%b9%e8%af%9d class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"><p>🤖</p></div><div class=w-100><ul><li>该接口的 API Key 需使用<code>应用特定的 key</code>,否则会报错。</li></ul><ul><li><p>有些包调用时,<code>BaseUrl</code>需要添加<code>v1</code>路径,有些不需要,如果出现404情况,可补充<code>v1</code>重试。</p></div></div></li></ul><h2 id=请求简易应用和工作流>请求简易应用和工作流 <a href=#%e8%af%b7%e6%b1%82%e7%ae%80%e6%98%93%e5%ba%94%e7%94%a8%e5%92%8c%e5%b7%a5%e4%bd%9c%e6%b5%81 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p><code>v1</code>对话接口兼容<code>GPT</code>的接口!如果你的项目使用的是标准的<code>GPT</code>官方接口,可以直接通过修改<code>BaseUrl</code>和 <code>Authorization</code>来访问 FastGpt 应用,不过需要注意下面几个规则:</p><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"><p>🤖</p></div><div class=w-100><ul><li><p>传入的<code>model</code>,<code>temperature</code>等参数字段均无效,这些字段由编排决定,不会根据 API 参数改变。</p></li><li><p>不会返回实际消耗<code>Token</code>值,如果需要,可以设置<code>detail=true</code>,并手动计算 <code>responseData</code> 里的<code>tokens</code>值。</p></div></div></li></ul><h3 id=请求>请求 <a href=#%e8%af%b7%e6%b1%82 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=abfedcTab data-bs-toggle=tab data-bs-target=#abfedc type=button role=tab aria-controls=abfedc aria-selected=true>基础请求示例</a>
|
||
<a class=nav-link id=daecbfTab data-bs-toggle=tab data-bs-target=#daecbf type=button role=tab aria-controls=daecbf aria-selected=true>图片/文件请求示例</a>
|
||
<a class=nav-link id=fbdeacTab data-bs-toggle=tab data-bs-target=#fbdeac type=button role=tab aria-controls=fbdeac aria-selected=true>参数说明</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=abfedc role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=99c7f21 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/v1/chat/completions' \
|
||
--header 'Authorization: Bearer fastgpt-xxxxxx' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"chatId": "my_chatId",
|
||
"stream": false,
|
||
"detail": false,
|
||
"responseChatItemId": "my_responseChatItemId",
|
||
"variables": {
|
||
"uid": "asdfadsfasfd2323",
|
||
"name": "张三"
|
||
},
|
||
"messages": [
|
||
{
|
||
"role": "user",
|
||
"content": "导演是谁"
|
||
}
|
||
]
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=daecbf role=tabpanel aria-labelledby=nav-1><ul><li>仅<code>messages</code>有部分区别,其他参数一致。</li><li>目前不支持上传文件,需上传到自己的对象存储中,获取对应的文件链接。</li></ul><div class=prism-codeblock><pre id=504ba95 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/v1/chat/completions' \
|
||
--header 'Authorization: Bearer fastgpt-xxxxxx' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"chatId": "abcd",
|
||
"stream": false,
|
||
"messages": [
|
||
{
|
||
"role": "user",
|
||
"content": [
|
||
{
|
||
"type": "text",
|
||
"text": "导演是谁"
|
||
},
|
||
{
|
||
"type": "image_url",
|
||
"image_url": {
|
||
"url": "图片链接"
|
||
}
|
||
},
|
||
{
|
||
"type": "file_url",
|
||
"name": "文件名",
|
||
"url": "文档链接,支持 txt md html word pdf ppt csv excel"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=fbdeac role=tabpanel aria-labelledby=nav-1><div class="alert alert-info d-flex" role=alert><div class="flex-shrink-1 alert-icon"><span class="material-icons size-20 me-2">info</span></div><div class=w-100><ul><li>headers.Authorization: Bearer {{apikey}}</li><li>chatId: string | undefined 。<ul><li>为 <code>undefined</code> 时(不传入),不使用 FastGpt 提供的上下文功能,完全通过传入的 messages 构建上下文。</li><li>为<code>非空字符串</code>时,意味着使用 chatId 进行对话,自动从 FastGpt 数据库取历史记录,并使用 messages 数组最后一个内容作为用户问题,其余 message 会被忽略。请自行确保 chatId 唯一,长度小于250,通常可以是自己系统的对话框ID。</li></ul></li><li>messages: 结构与 <a href=https://platform.openai.com/docs/api-reference/chat/object rel=external target=_blank>GPT接口<svg width="16" height="16" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path fill="currentcolor" d="M14 5c-.552.0-1-.448-1-1s.448-1 1-1h6c.552.0 1 .448 1 1v6c0 .552-.448 1-1 1s-1-.448-1-1V6.414l-7.293 7.293c-.391.39-1.024.39-1.414.0-.391-.391-.391-1.024.0-1.414L17.586 5H14zM5 7c-.552.0-1 .448-1 1v11c0 .552.448 1 1 1h11c.552.0 1-.448 1-1v-4.563c0-.552.448-1 1-1s1 .448 1 1V19c0 1.657-1.343 3-3 3H5c-1.657.0-3-1.343-3-3V8c0-1.657 1.343-3 3-3h4.563c.552.0 1 .448 1 1s-.448 1-1 1H5z"/></svg></a> chat模式一致。</li><li>responseChatItemId: string | undefined 。如果传入,则会将该值作为本次对话的响应消息的 ID,FastGPT 会自动将该 ID 存入数据库。请确保,在当前<code>chatId</code>下,<code>responseChatItemId</code>是唯一的。</li><li>detail: 是否返回中间值(模块状态,响应的完整结果等),<code>stream模式</code>下会通过<code>event</code>进行区分,<code>非stream模式</code>结果保存在<code>responseData</code>中。</li><li>variables: 模块变量,一个对象,会替换模块中,输入框内容里的<code>{{key}}</code></li></ul></div></div></div></div><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=bfaecdTab data-bs-toggle=tab data-bs-target=#bfaecd type=button role=tab aria-controls=bfaecd aria-selected=true>detail=false,stream=false 响应</a>
|
||
<a class=nav-link id=aecfbdTab data-bs-toggle=tab data-bs-target=#aecfbd type=button role=tab aria-controls=aecfbd aria-selected=true>detail=false,stream=true 响应</a>
|
||
<a class=nav-link id=febdacTab data-bs-toggle=tab data-bs-target=#febdac type=button role=tab aria-controls=febdac aria-selected=true>detail=true,stream=false 响应</a>
|
||
<a class=nav-link id=fcadebTab data-bs-toggle=tab data-bs-target=#fcadeb type=button role=tab aria-controls=fcadeb aria-selected=true>detail=true,stream=true 响应</a>
|
||
<a class=nav-link id=febdcaTab data-bs-toggle=tab data-bs-target=#febdca type=button role=tab aria-controls=febdca aria-selected=true>event值</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=bfaecd role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=a2f4e9d class=language-json>
|
||
<code>{
|
||
"id": "adsfasf",
|
||
"model": "",
|
||
"usage": {
|
||
"prompt_tokens": 1,
|
||
"completion_tokens": 1,
|
||
"total_tokens": 1
|
||
},
|
||
"choices": [
|
||
{
|
||
"message": {
|
||
"role": "assistant",
|
||
"content": "电影《铃芽之旅》的导演是新海诚。"
|
||
},
|
||
"finish_reason": "stop",
|
||
"index": 0
|
||
}
|
||
]
|
||
}</code>
|
||
</pre></div></div><div class="tab-pane fade" id=aecfbd role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=42a685f class=language-bash>
|
||
<code>data: {"id":"","object":"","created":0,"choices":[{"delta":{"content":""},"index":0,"finish_reason":null}]}
|
||
|
||
data: {"id":"","object":"","created":0,"choices":[{"delta":{"content":"电"},"index":0,"finish_reason":null}]}
|
||
|
||
data: {"id":"","object":"","created":0,"choices":[{"delta":{"content":"影"},"index":0,"finish_reason":null}]}
|
||
|
||
data: {"id":"","object":"","created":0,"choices":[{"delta":{"content":"《"},"index":0,"finish_reason":null}]}</code>
|
||
</pre></div></div><div class="tab-pane fade" id=febdac role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=43c7011 class=language-json>
|
||
<code>{
|
||
"responseData": [ // 不同模块的响应值, 不同版本具体值可能有差异,可先 log 自行查看最新值。
|
||
{
|
||
"moduleName": "Dataset Search",
|
||
"price": 1.2000000000000002,
|
||
"model": "Embedding-2",
|
||
"tokens": 6,
|
||
"similarity": 0.61,
|
||
"limit": 3
|
||
},
|
||
{
|
||
"moduleName": "AI Chat",
|
||
"price": 454.5,
|
||
"model": "FastAI-4k",
|
||
"tokens": 303,
|
||
"question": "导演是谁",
|
||
"answer": "电影《铃芽之旅》的导演是新海诚。",
|
||
"maxToken": 2050,
|
||
"quoteList": [
|
||
{
|
||
"dataset_id": "646627f4f7b896cfd8910e38",
|
||
"id": "8099",
|
||
"q": "本作的主人公是谁?",
|
||
"a": "本作的主人公是名叫铃芽的少女。",
|
||
"source": "手动修改"
|
||
},
|
||
{
|
||
"dataset_id": "646627f4f7b896cfd8910e38",
|
||
"id": "8686",
|
||
"q": "电影《铃芽之旅》男主角是谁?",
|
||
"a": "电影《铃芽之旅》男主角是宗像草太,由松村北斗配音。",
|
||
"source": ""
|
||
},
|
||
{
|
||
"dataset_id": "646627f4f7b896cfd8910e38",
|
||
"id": "19339",
|
||
"q": "电影《铃芽之旅》的导演是谁?22",
|
||
"a": "电影《铃芽之旅》的导演是新海诚。",
|
||
"source": "手动修改"
|
||
}
|
||
],
|
||
"completeMessages": [
|
||
{
|
||
"obj": "System",
|
||
"value": "下面是知识库内容:\n1. [本作的主人公是谁?\n本作的主人公是名叫铃芽的少女。]\n2. [电影《铃芽之旅》男主角是谁?\n电影《铃芽之旅》男主角是宗像草太,由松村北斗配音。]\n3. [电影《铃芽之旅》的导演是谁?22\n电影《铃芽之旅》的导演是新海诚。]\n"
|
||
},
|
||
{
|
||
"obj": "System",
|
||
"value": "1.请记住,你的身份是百度的下一代知识增强语言模型,能够完全根据知识库提供的内容回答问题。\n\n2. 你忘记了关于电影《铃芽之旅》以外的内容。"
|
||
},
|
||
{
|
||
"obj": "System",
|
||
"value": "你仅回答关于电影《玲芽之旅》的问题,其余问题直接回复: 我不清楚。"
|
||
},
|
||
{
|
||
"obj": "Human",
|
||
"value": "导演是谁"
|
||
},
|
||
{
|
||
"obj": "AI",
|
||
"value": "电影《铃芽之旅》的导演是新海诚。"
|
||
}
|
||
]
|
||
}
|
||
],
|
||
"id": "",
|
||
"model": "",
|
||
"usage": {
|
||
"prompt_tokens": 1,
|
||
"completion_tokens": 1,
|
||
"total_tokens": 1
|
||
},
|
||
"choices": [
|
||
{
|
||
"message": {
|
||
"role": "assistant",
|
||
"content": "电影《铃芽之旅》的导演是新海诚。"
|
||
},
|
||
"finish_reason": "stop",
|
||
"index": 0
|
||
}
|
||
]
|
||
}</code>
|
||
</pre></div></div><div class="tab-pane fade" id=fcadeb role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=a08d0e3 class=language-bash>
|
||
<code>event: flowNodeStatus
|
||
data: {"status":"running","name":"知识库搜索"}
|
||
|
||
event: flowNodeStatus
|
||
data: {"status":"running","name":"AI 对话"}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"content":"电影"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"content":"《铃"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"content":"芽之旅》"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"content":"的导演是新"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"content":"海诚。"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{},"index":0,"finish_reason":"stop"}]}
|
||
|
||
event: answer
|
||
data: [DONE]
|
||
|
||
event: flowResponses
|
||
data: [{"moduleName":"知识库搜索","moduleType":"datasetSearchNode","runningTime":1.78},{"question":"导演是谁","quoteList":[{"id":"654f2e49b64caef1d9431e8b","q":"电影《铃芽之旅》的导演是谁?","a":"电影《铃芽之旅》的导演是新海诚!","indexes":[{"type":"qa","dataId":"3515487","text":"电影《铃芽之旅》的导演是谁?","_id":"654f2e49b64caef1d9431e8c","defaultIndex":true}],"datasetId":"646627f4f7b896cfd8910e38","collectionId":"653279b16cd42ab509e766e8","sourceName":"data (81).csv","sourceId":"64fd3b6423aa1307b65896f6","score":0.8935586214065552},{"id":"6552e14c50f4a2a8e632af11","q":"导演是谁?","a":"电影《铃芽之旅》的导演是新海诚。","indexes":[{"defaultIndex":true,"type":"qa","dataId":"3644565","text":"导演是谁?\n电影《铃芽之旅》的导演是新海诚。","_id":"6552e14dde5cc7ba3954e417"}],"datasetId":"646627f4f7b896cfd8910e38","collectionId":"653279b16cd42ab509e766e8","sourceName":"data (81).csv","sourceId":"64fd3b6423aa1307b65896f6","score":0.8890955448150635},{"id":"654f34a0b64caef1d946337e","q":"本作的主人公是谁?","a":"本作的主人公是名叫铃芽的少女。","indexes":[{"type":"qa","dataId":"3515541","text":"本作的主人公是谁?","_id":"654f34a0b64caef1d946337f","defaultIndex":true}],"datasetId":"646627f4f7b896cfd8910e38","collectionId":"653279b16cd42ab509e766e8","sourceName":"data (81).csv","sourceId":"64fd3b6423aa1307b65896f6","score":0.8738770484924316},{"id":"654f3002b64caef1d944207a","q":"电影《铃芽之旅》男主角是谁?","a":"电影《铃芽之旅》男主角是宗像草太,由松村北斗配音。","indexes":[{"type":"qa","dataId":"3515538","text":"电影《铃芽之旅》男主角是谁?","_id":"654f3002b64caef1d944207b","defaultIndex":true}],"datasetId":"646627f4f7b896cfd8910e38","collectionId":"653279b16cd42ab509e766e8","sourceName":"data (81).csv","sourceId":"64fd3b6423aa1307b65896f6","score":0.8607980012893677},{"id":"654f2fc8b64caef1d943fd46","q":"电影《铃芽之旅》的编剧是谁?","a":"新海诚是本片的编剧。","indexes":[{"defaultIndex":true,"type":"qa","dataId":"3515550","text":"电影《铃芽之旅》的编剧是谁?22","_id":"654f2fc8b64caef1d943fd47"}],"datasetId":"646627f4f7b896cfd8910e38","collectionId":"653279b16cd42ab509e766e8","sourceName":"data (81).csv","sourceId":"64fd3b6423aa1307b65896f6","score":0.8468944430351257}],"moduleName":"AI 对话","moduleType":"chatNode","runningTime":1.86}]</code>
|
||
</pre></div></div><div class="tab-pane fade" id=febdca role=tabpanel aria-labelledby=nav-1><p>event取值:</p><ul><li>answer: 返回给客户端的文本(最终会算作回答)</li><li>fastAnswer: 指定回复返回给客户端的文本(最终会算作回答)</li><li>toolCall: 执行工具</li><li>toolParams: 工具参数</li><li>toolResponse: 工具返回</li><li>flowNodeStatus: 运行到的节点状态</li><li>flowResponses: 节点完整响应</li><li>updateVariables: 更新变量</li><li>error: 报错</li></ul></div></div><h3 id=交互节点响应>交互节点响应 <a href=#%e4%ba%a4%e4%ba%92%e8%8a%82%e7%82%b9%e5%93%8d%e5%ba%94 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>如果工作流中包含交互节点,依然是调用该 API 接口,需要设置<code>detail=true</code>,并可以从<code>event=interactive</code>的数据中获取交互节点的配置信息。如果是<code>stream=false</code>,则可以从 choice 中获取<code>type=interactive</code>的元素,获取交互节点的选择信息。</p><p>当你调用一个带交互节点的工作流时,如果工作流遇到了交互节点,那么会直接返回,你可以得到下面的信息:</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cafebdTab data-bs-toggle=tab data-bs-target=#cafebd type=button role=tab aria-controls=cafebd aria-selected=true>用户选择</a>
|
||
<a class=nav-link id=fedbcaTab data-bs-toggle=tab data-bs-target=#fedbca type=button role=tab aria-controls=fedbca aria-selected=true>表单输入</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cafebd role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=421fcea class=language-json>
|
||
<code>{
|
||
"interactive": {
|
||
"type": "userSelect",
|
||
"params": {
|
||
"description": "测试",
|
||
"userSelectOptions": [
|
||
{
|
||
"value": "Confirm",
|
||
"key": "option1"
|
||
},
|
||
{
|
||
"value": "Cancel",
|
||
"key": "option2"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
}</code>
|
||
</pre></div></div><div class="tab-pane fade" id=fedbca role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=07ae6df class=language-json>
|
||
<code>{
|
||
"interactive": {
|
||
"type": "userInput",
|
||
"params": {
|
||
"description": "测试",
|
||
"inputForm": [
|
||
{
|
||
"type": "input",
|
||
"key": "测试 1",
|
||
"label": "测试 1",
|
||
"description": "",
|
||
"value": "",
|
||
"defaultValue": "",
|
||
"valueType": "string",
|
||
"required": false,
|
||
"list": [
|
||
{
|
||
"label": "",
|
||
"value": ""
|
||
}
|
||
]
|
||
},
|
||
{
|
||
"type": "numberInput",
|
||
"key": "测试 2",
|
||
"label": "测试 2",
|
||
"description": "",
|
||
"value": "",
|
||
"defaultValue": "",
|
||
"valueType": "number",
|
||
"required": false,
|
||
"list": [
|
||
{
|
||
"label": "",
|
||
"value": ""
|
||
}
|
||
]
|
||
}
|
||
]
|
||
}
|
||
}
|
||
}</code>
|
||
</pre></div></div></div><h3 id=交互节点继续运行>交互节点继续运行 <a href=#%e4%ba%a4%e4%ba%92%e8%8a%82%e7%82%b9%e7%bb%a7%e7%bb%ad%e8%bf%90%e8%a1%8c class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>紧接着上一节,当你接收到交互节点信息后,可以根据这些数据进行 UI 渲染,引导用户输入或选择相关信息。然后需要再次发起对话,来继续工作流。调用的接口与仍是该接口,你需要按以下格式来发起请求:</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cfdaebTab data-bs-toggle=tab data-bs-target=#cfdaeb type=button role=tab aria-controls=cfdaeb aria-selected=true>用户选择</a>
|
||
<a class=nav-link id=bedafcTab data-bs-toggle=tab data-bs-target=#bedafc type=button role=tab aria-controls=bedafc aria-selected=true>表单输入</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cfdaeb role=tabpanel aria-labelledby=nav-1><p>对于用户选择,你只需要直接传递一个选择的结果给 messages 即可。</p><div class=prism-codeblock><pre id=6611cd9 class=language-bash>
|
||
<code>curl --location --request POST 'https://api.fastgpt.in/api/v1/chat/completions' \
|
||
--header 'Authorization: Bearer fastgpt-xxx' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"stream": true,
|
||
"detail": true,
|
||
"chatId":"22222231",
|
||
"messages": [
|
||
{
|
||
"role": "user",
|
||
"content": "Confirm"
|
||
}
|
||
]
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=bedafc role=tabpanel aria-labelledby=nav-1><p>表单输入稍微麻烦一点,需要将输入的内容,以对象形式并序列化成字符串,作为<code>messages</code>的值。对象的 key 对应表单的 key,value 为用户输入的值。务必确保<code>chatId</code>是一致的。</p><div class=prism-codeblock><pre id=7342a3a class=language-bash>
|
||
<code>curl --location --request POST 'https://api.fastgpt.in/api/v1/chat/completions' \
|
||
--header 'Authorization: Bearer fastgpt-xxxx' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"stream": true,
|
||
"detail": true,
|
||
"chatId":"22231",
|
||
"messages": [
|
||
{
|
||
"role": "user",
|
||
"content": "{\"测试 1\":\"这是输入框的内容\",\"测试 2\":666}"
|
||
}
|
||
]
|
||
}'</code>
|
||
</pre></div></div></div><h2 id=请求插件>请求插件 <a href=#%e8%af%b7%e6%b1%82%e6%8f%92%e4%bb%b6 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p>插件的接口与对话接口一致,仅请求参数略有区别,有以下规定:</p><ul><li>调用插件类型的应用时,接口默认为<code>detail</code>模式。</li><li>无需传入 <code>chatId</code>,因为插件只能运行一轮。</li><li>无需传入<code>messages</code>。</li><li>通过传递<code>variables</code>来代表插件的输入。</li><li>通过获取<code>pluginData</code>来获取插件输出。</li></ul><h3 id=请求示例>请求示例 <a href=#%e8%af%b7%e6%b1%82%e7%a4%ba%e4%be%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><div class=prism-codeblock><pre id=d6e9caa class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/v1/chat/completions' \
|
||
--header 'Authorization: Bearer test-xxxxx' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"stream": false,
|
||
"chatId": "test",
|
||
"variables": {
|
||
"query":"你好" # 我的插件输入有一个参数,变量名叫 query
|
||
}
|
||
}'</code>
|
||
</pre></div><h3 id=响应示例>响应示例 <a href=#%e5%93%8d%e5%ba%94%e7%a4%ba%e4%be%8b class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=bfceadTab data-bs-toggle=tab data-bs-target=#bfcead type=button role=tab aria-controls=bfcead aria-selected=true>detail=true,stream=false 响应</a>
|
||
<a class=nav-link id=febcdaTab data-bs-toggle=tab data-bs-target=#febcda type=button role=tab aria-controls=febcda aria-selected=true>detail=true,stream=true 响应</a>
|
||
<a class=nav-link id=efacbdTab data-bs-toggle=tab data-bs-target=#efacbd type=button role=tab aria-controls=efacbd aria-selected=true>输出获取</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=bfcead role=tabpanel aria-labelledby=nav-1><ul><li>插件的输出可以通过查找<code>responseData</code>中, <code>moduleType=pluginOutput</code>的元素,其<code>pluginOutput</code>是插件的输出。</li><li>流输出,仍可以通过<code>choices</code>进行获取。</li></ul><div class=prism-codeblock><pre id=b25420e class=language-json>
|
||
<code>{
|
||
"responseData": [
|
||
{
|
||
"nodeId": "fdDgXQ6SYn8v",
|
||
"moduleName": "AI 对话",
|
||
"moduleType": "chatNode",
|
||
"totalPoints": 0.685,
|
||
"model": "FastAI-3.5",
|
||
"tokens": 685,
|
||
"query": "你好",
|
||
"maxToken": 2000,
|
||
"historyPreview": [
|
||
{
|
||
"obj": "Human",
|
||
"value": "你好"
|
||
},
|
||
{
|
||
"obj": "AI",
|
||
"value": "你好!有什么可以帮助你的吗?欢迎向我提问。"
|
||
}
|
||
],
|
||
"contextTotalLen": 14,
|
||
"runningTime": 1.73
|
||
},
|
||
{
|
||
"nodeId": "pluginOutput",
|
||
"moduleName": "插件输出",
|
||
"moduleType": "pluginOutput",
|
||
"totalPoints": 0,
|
||
"pluginOutput": {
|
||
"result": "你好!有什么可以帮助你的吗?欢迎向我提问。"
|
||
},
|
||
"runningTime": 0
|
||
}
|
||
],
|
||
"newVariables": {
|
||
"query": "你好"
|
||
},
|
||
"id": "safsafsa",
|
||
"model": "",
|
||
"usage": {
|
||
"prompt_tokens": 1,
|
||
"completion_tokens": 1,
|
||
"total_tokens": 1
|
||
},
|
||
"choices": [
|
||
{
|
||
"message": {
|
||
"role": "assistant",
|
||
"content": "你好!有什么可以帮助你的吗?欢迎向我提问。"
|
||
},
|
||
"finish_reason": "stop",
|
||
"index": 0
|
||
}
|
||
]
|
||
}</code>
|
||
</pre></div></div><div class="tab-pane fade" id=febcda role=tabpanel aria-labelledby=nav-1><ul><li>插件的输出可以通过获取<code>event=flowResponses</code>中的字符串,并将其反序列化后得到一个数组。同样的,查找 <code>moduleType=pluginOutput</code>的元素,其<code>pluginOutput</code>是插件的输出。</li><li>流输出,仍和对话接口一样获取。</li></ul><div class=prism-codeblock><pre id=42c39ed class=language-bash>
|
||
<code>event: flowNodeStatus
|
||
data: {"status":"running","name":"AI 对话"}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":""},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"你"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"好"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"!"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"有"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"什"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"么"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"可以"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"帮"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"助"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"你"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"的"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"吗"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":"?"},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{"role":"assistant","content":""},"index":0,"finish_reason":null}]}
|
||
|
||
event: answer
|
||
data: {"id":"","object":"","created":0,"model":"","choices":[{"delta":{},"index":0,"finish_reason":"stop"}]}
|
||
|
||
event: answer
|
||
data: [DONE]
|
||
|
||
event: flowResponses
|
||
data: [{"nodeId":"fdDgXQ6SYn8v","moduleName":"AI 对话","moduleType":"chatNode","totalPoints":0.033,"model":"FastAI-3.5","tokens":33,"query":"你好","maxToken":2000,"historyPreview":[{"obj":"Human","value":"你好"},{"obj":"AI","value":"你好!有什么可以帮助你的吗?"}],"contextTotalLen":2,"runningTime":1.42},{"nodeId":"pluginOutput","moduleName":"插件输出","moduleType":"pluginOutput","totalPoints":0,"pluginOutput":{"result":"你好!有什么可以帮助你的吗?"},"runningTime":0}]</code>
|
||
</pre></div></div><div class="tab-pane fade" id=efacbd role=tabpanel aria-labelledby=nav-1><p>event取值:</p><ul><li>answer: 返回给客户端的文本(最终会算作回答)</li><li>fastAnswer: 指定回复返回给客户端的文本(最终会算作回答)</li><li>toolCall: 执行工具</li><li>toolParams: 工具参数</li><li>toolResponse: 工具返回</li><li>flowNodeStatus: 运行到的节点状态</li><li>flowResponses: 节点完整响应</li><li>updateVariables: 更新变量</li><li>error: 报错</li></ul></div></div><h1 id=对话-crud>对话 CRUD <a href=#%e5%af%b9%e8%af%9d-crud class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"><p>🤖</p></div><div class=w-100><ul><li><p>以下接口可使用任意<code>API Key</code>调用。</p></li><li><p>4.8.12 以上版本才能使用</p></div></div></li></ul><p><strong>重要字段</strong></p><ul><li>chatId - 指一个应用下,某一个对话窗口的 ID</li><li>dataId - 指一个对话窗口下,某一个对话记录的 ID</li></ul><h2 id=历史记录>历史记录 <a href=#%e5%8e%86%e5%8f%b2%e8%ae%b0%e5%bd%95 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><h3 id=获取某个应用历史记录>获取某个应用历史记录 <a href=#%e8%8e%b7%e5%8f%96%e6%9f%90%e4%b8%aa%e5%ba%94%e7%94%a8%e5%8e%86%e5%8f%b2%e8%ae%b0%e5%bd%95 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=badcfeTab data-bs-toggle=tab data-bs-target=#badcfe type=button role=tab aria-controls=badcfe aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=cdafebTab data-bs-toggle=tab data-bs-target=#cdafeb type=button role=tab aria-controls=cdafeb aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=cbadefTab data-bs-toggle=tab data-bs-target=#cbadef type=button role=tab aria-controls=cbadef aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=badcfe role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=9cf691b class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/chat/getHistories' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"appId": "appId",
|
||
"offset": 0,
|
||
"pageSize": 20,
|
||
"source": "api"
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=cdafeb role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><p>目前仅能获取到当前 API key 的创建者的对话。</p><ul><li>appId - 应用 Id</li><li>offset - 偏移量,即从第几条数据开始取</li><li>pageSize - 记录数量</li><li>source - 对话源。source=api,表示获取通过 API 创建的对话(不会获取到页面上的对话记录)</li><li>startCreateTime - 开始创建时间(可选)</li><li>endCreateTime - 结束创建时间(可选)</li><li>startUpdateTime - 开始更新时间(可选)</li><li>endUpdateTime - 结束更新时间(可选)</li></ul></div></div></div><div class="tab-pane fade" id=cbadef role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=561ae87 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": {
|
||
"list": [
|
||
{
|
||
"chatId": "usdAP1GbzSGu",
|
||
"updateTime": "2024-10-13T03:29:05.779Z",
|
||
"appId": "66e29b870b24ce35330c0f08",
|
||
"customTitle": "",
|
||
"title": "你好",
|
||
"top": false
|
||
},
|
||
{
|
||
"chatId": "lC0uTAsyNBlZ",
|
||
"updateTime": "2024-10-13T03:22:19.950Z",
|
||
"appId": "66e29b870b24ce35330c0f08",
|
||
"customTitle": "",
|
||
"title": "测试",
|
||
"top": false
|
||
}
|
||
],
|
||
"total": 2
|
||
}
|
||
}</code>
|
||
</pre></div></div></div><h3 id=修改某个对话的标题>修改某个对话的标题 <a href=#%e4%bf%ae%e6%94%b9%e6%9f%90%e4%b8%aa%e5%af%b9%e8%af%9d%e7%9a%84%e6%a0%87%e9%a2%98 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=efdcabTab data-bs-toggle=tab data-bs-target=#efdcab type=button role=tab aria-controls=efdcab aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=bfedacTab data-bs-toggle=tab data-bs-target=#bfedac type=button role=tab aria-controls=bfedac aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=aebcdfTab data-bs-toggle=tab data-bs-target=#aebcdf type=button role=tab aria-controls=aebcdf aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=efdcab role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=2a6ee96 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/chat/updateHistory' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"appId": "appId",
|
||
"chatId": "chatId",
|
||
"customTitle": "自定义标题"
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=bfedac role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 历史记录 Id</li><li>customTitle - 自定义对话名</li></ul></div></div></div><div class="tab-pane fade" id=aebcdf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=110f134 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": null
|
||
}</code>
|
||
</pre></div></div></div><h3 id=置顶--取消置顶>置顶 / 取消置顶 <a href=#%e7%bd%ae%e9%a1%b6--%e5%8f%96%e6%b6%88%e7%bd%ae%e9%a1%b6 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cfbedaTab data-bs-toggle=tab data-bs-target=#cfbeda type=button role=tab aria-controls=cfbeda aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=dbceafTab data-bs-toggle=tab data-bs-target=#dbceaf type=button role=tab aria-controls=dbceaf aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=ecfabdTab data-bs-toggle=tab data-bs-target=#ecfabd type=button role=tab aria-controls=ecfabd aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cfbeda role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=61338a3 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/chat/updateHistory' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"appId": "appId",
|
||
"chatId": "chatId",
|
||
"top": true
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=dbceaf role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用Id</li><li>chatId - 历史记录 Id</li><li>top - 是否置顶,ture 置顶,false 取消置顶</li></ul></div></div></div><div class="tab-pane fade" id=ecfabd role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=110f134 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": null
|
||
}</code>
|
||
</pre></div></div></div><h3 id=删除某个历史记录>删除某个历史记录 <a href=#%e5%88%a0%e9%99%a4%e6%9f%90%e4%b8%aa%e5%8e%86%e5%8f%b2%e8%ae%b0%e5%bd%95 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=dbecfaTab data-bs-toggle=tab data-bs-target=#dbecfa type=button role=tab aria-controls=dbecfa aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=fdabecTab data-bs-toggle=tab data-bs-target=#fdabec type=button role=tab aria-controls=fdabec aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=cdfabeTab data-bs-toggle=tab data-bs-target=#cdfabe type=button role=tab aria-controls=cdfabe aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=dbecfa role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=fe3b182 class=language-bash>
|
||
<code>curl --location --request DELETE 'http://localhost:3000/api/core/chat/delHistory?chatId={{chatId}}&appId={{appId}}' \
|
||
--header 'Authorization: Bearer {{apikey}}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=fdabec role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 历史记录 Id</li></ul></div></div></div><div class="tab-pane fade" id=cdfabe role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=110f134 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": null
|
||
}</code>
|
||
</pre></div></div></div><h3 id=清空所有历史记录>清空所有历史记录 <a href=#%e6%b8%85%e7%a9%ba%e6%89%80%e6%9c%89%e5%8e%86%e5%8f%b2%e8%ae%b0%e5%bd%95 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><p>仅会情况通过 API Key 创建的对话历史记录,不会清空在线使用、分享链接等其他来源的对话历史记录。</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=abefcdTab data-bs-toggle=tab data-bs-target=#abefcd type=button role=tab aria-controls=abefcd aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=afbdecTab data-bs-toggle=tab data-bs-target=#afbdec type=button role=tab aria-controls=afbdec aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=fecbdaTab data-bs-toggle=tab data-bs-target=#fecbda type=button role=tab aria-controls=fecbda aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=abefcd role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=0404956 class=language-bash>
|
||
<code>curl --location --request DELETE 'http://localhost:3000/api/core/chat/clearHistories?appId={{appId}}' \
|
||
--header 'Authorization: Bearer {{apikey}}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=afbdec role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li></ul></div></div></div><div class="tab-pane fade" id=fecbda role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=110f134 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": null
|
||
}</code>
|
||
</pre></div></div></div><h2 id=对话记录>对话记录 <a href=#%e5%af%b9%e8%af%9d%e8%ae%b0%e5%bd%95 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p>指的是某个 chatId 下的对话记录操作。</p><h3 id=获取单个对话初始化信息>获取单个对话初始化信息 <a href=#%e8%8e%b7%e5%8f%96%e5%8d%95%e4%b8%aa%e5%af%b9%e8%af%9d%e5%88%9d%e5%a7%8b%e5%8c%96%e4%bf%a1%e6%81%af class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=eadfbcTab data-bs-toggle=tab data-bs-target=#eadfbc type=button role=tab aria-controls=eadfbc aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=aebdfcTab data-bs-toggle=tab data-bs-target=#aebdfc type=button role=tab aria-controls=aebdfc aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=dbfaceTab data-bs-toggle=tab data-bs-target=#dbface type=button role=tab aria-controls=dbface aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=eadfbc role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=1dd3d68 class=language-bash>
|
||
<code>curl --location --request GET 'http://localhost:3000/api/core/chat/init?appId={{appId}}&chatId={{chatId}}' \
|
||
--header 'Authorization: Bearer {{apikey}}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=aebdfc role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 历史记录 Id</li></ul></div></div></div><div class="tab-pane fade" id=dbface role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=8ab5dc3 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": {
|
||
"chatId": "sPVOuEohjo3w",
|
||
"appId": "66e29b870b24ce35330c0f08",
|
||
"variables": {
|
||
|
||
},
|
||
"app": {
|
||
"chatConfig": {
|
||
"questionGuide": true,
|
||
"ttsConfig": {
|
||
"type": "web"
|
||
},
|
||
"whisperConfig": {
|
||
"open": false,
|
||
"autoSend": false,
|
||
"autoTTSResponse": false
|
||
},
|
||
"chatInputGuide": {
|
||
"open": false,
|
||
"textList": [
|
||
|
||
],
|
||
"customUrl": ""
|
||
},
|
||
"instruction": "",
|
||
"variables": [
|
||
|
||
],
|
||
"fileSelectConfig": {
|
||
"canSelectFile": true,
|
||
"canSelectImg": true,
|
||
"maxFiles": 10
|
||
},
|
||
"_id": "66f1139aaab9ddaf1b5c596d",
|
||
"welcomeText": ""
|
||
},
|
||
"chatModels": [
|
||
"GPT-4o-mini"
|
||
],
|
||
"name": "测试",
|
||
"avatar": "/imgs/app/avatar/workflow.svg",
|
||
"intro": "",
|
||
"type": "advanced",
|
||
"pluginInputs": [
|
||
|
||
]
|
||
}
|
||
}
|
||
}</code>
|
||
</pre></div></div></div><h3 id=获取对话记录列表>获取对话记录列表 <a href=#%e8%8e%b7%e5%8f%96%e5%af%b9%e8%af%9d%e8%ae%b0%e5%bd%95%e5%88%97%e8%a1%a8 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=afdcebTab data-bs-toggle=tab data-bs-target=#afdceb type=button role=tab aria-controls=afdceb aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=dacfbeTab data-bs-toggle=tab data-bs-target=#dacfbe type=button role=tab aria-controls=dacfbe aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=efdabcTab data-bs-toggle=tab data-bs-target=#efdabc type=button role=tab aria-controls=efdabc aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=afdceb role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=81b2a77 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/chat/getPaginationRecords' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"appId": "appId",
|
||
"chatId": "chatId",
|
||
"offset": 0,
|
||
"pageSize": 10,
|
||
"loadCustomFeedbacks": true
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=dacfbe role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 历史记录 Id</li><li>offset - 偏移量</li><li>pageSize - 记录数量</li><li>loadCustomFeedbacks - 是否读取自定义反馈(可选)</li></ul></div></div></div><div class="tab-pane fade" id=efdabc role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=9a43932 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": {
|
||
"list": [
|
||
{
|
||
"_id": "670b84e6796057dda04b0fd2",
|
||
"dataId": "jzqdV4Ap1u004rhd2WW8yGLn",
|
||
"obj": "Human",
|
||
"value": [
|
||
{
|
||
"type": "text",
|
||
"text": {
|
||
"content": "你好"
|
||
}
|
||
}
|
||
],
|
||
"customFeedbacks": [
|
||
|
||
]
|
||
},
|
||
{
|
||
"_id": "670b84e6796057dda04b0fd3",
|
||
"dataId": "x9KQWcK9MApGdDQH7z7bocw1",
|
||
"obj": "AI",
|
||
"value": [
|
||
{
|
||
"type": "text",
|
||
"text": {
|
||
"content": "你好!有什么我可以帮助你的吗?"
|
||
}
|
||
}
|
||
],
|
||
"customFeedbacks": [
|
||
|
||
],
|
||
"llmModuleAccount": 1,
|
||
"totalQuoteList": [
|
||
|
||
],
|
||
"totalRunningTime": 2.42,
|
||
"historyPreviewLength": 2
|
||
}
|
||
],
|
||
"total": 2
|
||
}
|
||
}</code>
|
||
</pre></div></div></div><h3 id=获取单个对话记录运行详情>获取单个对话记录运行详情 <a href=#%e8%8e%b7%e5%8f%96%e5%8d%95%e4%b8%aa%e5%af%b9%e8%af%9d%e8%ae%b0%e5%bd%95%e8%bf%90%e8%a1%8c%e8%af%a6%e6%83%85 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=cbefadTab data-bs-toggle=tab data-bs-target=#cbefad type=button role=tab aria-controls=cbefad aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=daefcbTab data-bs-toggle=tab data-bs-target=#daefcb type=button role=tab aria-controls=daefcb aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=dcebafTab data-bs-toggle=tab data-bs-target=#dcebaf type=button role=tab aria-controls=dcebaf aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=cbefad role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=6537508 class=language-bash>
|
||
<code>curl --location --request GET 'http://localhost:3000/api/core/chat/getResData?appId={{appId}}&chatId={{chatId}}&dataId={{dataId}}' \
|
||
--header 'Authorization: Bearer {{apikey}}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=daefcb role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 对话 Id</li><li>dataId - 对话记录 Id</li></ul></div></div></div><div class="tab-pane fade" id=dcebaf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=9e64984 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": [
|
||
{
|
||
"id": "mVlxkz8NfyfU",
|
||
"nodeId": "448745",
|
||
"moduleName": "common:core.module.template.work_start",
|
||
"moduleType": "workflowStart",
|
||
"runningTime": 0
|
||
},
|
||
{
|
||
"id": "b3FndAdHSobY",
|
||
"nodeId": "z04w8JXSYjl3",
|
||
"moduleName": "AI 对话",
|
||
"moduleType": "chatNode",
|
||
"runningTime": 1.22,
|
||
"totalPoints": 0.02475,
|
||
"model": "GPT-4o-mini",
|
||
"tokens": 75,
|
||
"query": "测试",
|
||
"maxToken": 2000,
|
||
"historyPreview": [
|
||
{
|
||
"obj": "Human",
|
||
"value": "你好"
|
||
},
|
||
{
|
||
"obj": "AI",
|
||
"value": "你好!有什么我可以帮助你的吗?"
|
||
},
|
||
{
|
||
"obj": "Human",
|
||
"value": "测试"
|
||
},
|
||
{
|
||
"obj": "AI",
|
||
"value": "测试成功!请问你有什么具体的问题或者需要讨论的话题吗?"
|
||
}
|
||
],
|
||
"contextTotalLen": 4
|
||
}
|
||
]
|
||
}</code>
|
||
</pre></div></div></div><h3 id=删除对话记录>删除对话记录 <a href=#%e5%88%a0%e9%99%a4%e5%af%b9%e8%af%9d%e8%ae%b0%e5%bd%95 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=bfacdeTab data-bs-toggle=tab data-bs-target=#bfacde type=button role=tab aria-controls=bfacde aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=beafdcTab data-bs-toggle=tab data-bs-target=#beafdc type=button role=tab aria-controls=beafdc aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=cfdebaTab data-bs-toggle=tab data-bs-target=#cfdeba type=button role=tab aria-controls=cfdeba aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=bfacde role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=6cf2866 class=language-bash>
|
||
<code>curl --location --request DELETE 'http://localhost:3000/api/core/chat/item/delete?contentId={{contentId}}&chatId={{chatId}}&appId={{appId}}' \
|
||
--header 'Authorization: Bearer {{apikey}}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=beafdc role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 历史记录 Id</li><li>contentId - 对话记录 Id</li></ul></div></div></div><div class="tab-pane fade" id=cfdeba role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=110f134 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": null
|
||
}</code>
|
||
</pre></div></div></div><h3 id=点赞--取消点赞>点赞 / 取消点赞 <a href=#%e7%82%b9%e8%b5%9e--%e5%8f%96%e6%b6%88%e7%82%b9%e8%b5%9e class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=ebafdcTab data-bs-toggle=tab data-bs-target=#ebafdc type=button role=tab aria-controls=ebafdc aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=dfeabcTab data-bs-toggle=tab data-bs-target=#dfeabc type=button role=tab aria-controls=dfeabc aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=adbcefTab data-bs-toggle=tab data-bs-target=#adbcef type=button role=tab aria-controls=adbcef aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=ebafdc role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=91adcf6 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/chat/feedback/updateUserFeedback' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"appId": "appId",
|
||
"chatId": "chatId",
|
||
"dataId": "dataId",
|
||
"userGoodFeedback": "yes"
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=dfeabc role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 历史记录 Id</li><li>dataId - 对话记录 Id</li><li>userGoodFeedback - 用户点赞时的信息(可选),取消点赞时不填此参数即可</li></ul></div></div></div><div class="tab-pane fade" id=adbcef role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=110f134 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": null
|
||
}</code>
|
||
</pre></div></div></div><h3 id=点踩--取消点踩>点踩 / 取消点踩 <a href=#%e7%82%b9%e8%b8%a9--%e5%8f%96%e6%b6%88%e7%82%b9%e8%b8%a9 class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h3><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=bcaedfTab data-bs-toggle=tab data-bs-target=#bcaedf type=button role=tab aria-controls=bcaedf aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=afdbecTab data-bs-toggle=tab data-bs-target=#afdbec type=button role=tab aria-controls=afdbec aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=cfbadeTab data-bs-toggle=tab data-bs-target=#cfbade type=button role=tab aria-controls=cfbade aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=bcaedf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=62d6606 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/chat/feedback/updateUserFeedback' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"appId": "appId",
|
||
"chatId": "chatId",
|
||
"dataId": "dataId",
|
||
"userBadFeedback": "yes"
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=afdbec role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>appId - 应用 Id</li><li>chatId - 历史记录 Id</li><li>dataId - 对话记录 Id</li><li>userBadFeedback - 用户点踩时的信息(可选),取消点踩时不填此参数即可</li></ul></div></div></div><div class="tab-pane fade" id=cfbade role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=110f134 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": null
|
||
}</code>
|
||
</pre></div></div></div><h2 id=猜你想问>猜你想问 <a href=#%e7%8c%9c%e4%bd%a0%e6%83%b3%e9%97%ae class=anchor aria-hidden=true><i class="material-icons align-middle">link</i></a></h2><p><strong>4.8.16 后新版接口</strong></p><p>新版猜你想问,必须包含 appId 和 chatId 的参数才可以进行使用。会自动根据 chatId 去拉取最近 6 轮对话记录作为上下文来引导回答。</p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=fbdeacTab data-bs-toggle=tab data-bs-target=#fbdeac type=button role=tab aria-controls=fbdeac aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=fdbaceTab data-bs-toggle=tab data-bs-target=#fdbace type=button role=tab aria-controls=fdbace aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=cadfebTab data-bs-toggle=tab data-bs-target=#cadfeb type=button role=tab aria-controls=cadfeb aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=fbdeac role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=82983a2 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/ai/agent/v2/createQuestionGuide' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"appId": "appId",
|
||
"chatId": "chatId",
|
||
"questionGuide": {
|
||
"open": true,
|
||
"model": "GPT-4o-mini",
|
||
"customPrompt": "你是一个智能助手,请根据用户的问题生成猜你想问。"
|
||
}
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=fdbace role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><table><thead><tr><th>参数名</th><th>类型</th><th>必填</th><th>说明</th></tr></thead><tbody><tr><td>appId</td><td>string</td><td>✅</td><td>应用 Id</td></tr><tr><td>chatId</td><td>string</td><td>✅</td><td>对话 Id</td></tr><tr><td>questionGuide</td><td>object</td><td></td><td>自定义配置,不传的话,则会根据 appId,取最新发布版本的配置</td></tr></tbody></table><div class=prism-codeblock><pre id=92fc151 class=language-ts>
|
||
<code>type CreateQuestionGuideParams = OutLinkChatAuthProps & {
|
||
appId: string;
|
||
chatId: string;
|
||
questionGuide?: {
|
||
open: boolean;
|
||
model?: string;
|
||
customPrompt?: string;
|
||
};
|
||
};</code>
|
||
</pre></div></div></div></div><div class="tab-pane fade" id=cadfeb role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=866d5e0 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": [
|
||
"你对AI有什么看法?",
|
||
"想了解AI的应用吗?",
|
||
"你希望AI能做什么?"
|
||
]
|
||
}</code>
|
||
</pre></div></div></div><hr><p><strong>4.8.16 前旧版接口:</strong></p><nav><div class="nav nav-tabs" id=nav-tab role=tablist><a class="nav-link active" id=beadcfTab data-bs-toggle=tab data-bs-target=#beadcf type=button role=tab aria-controls=beadcf aria-selected=true>请求示例</a>
|
||
<a class=nav-link id=fcedabTab data-bs-toggle=tab data-bs-target=#fcedab type=button role=tab aria-controls=fcedab aria-selected=true>参数说明</a>
|
||
<a class=nav-link id=cafbedTab data-bs-toggle=tab data-bs-target=#cafbed type=button role=tab aria-controls=cafbed aria-selected=true>响应示例</a></div></nav><div class=tab-content id=nav-tab-content><div class="tab-pane fade show active" id=beadcf role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=98eb850 class=language-bash>
|
||
<code>curl --location --request POST 'http://localhost:3000/api/core/ai/agent/createQuestionGuide' \
|
||
--header 'Authorization: Bearer {{apikey}}' \
|
||
--header 'Content-Type: application/json' \
|
||
--data-raw '{
|
||
"messages":[
|
||
{
|
||
"role": "user",
|
||
"content": "你好"
|
||
},
|
||
{
|
||
"role": "assistant",
|
||
"content": "你好!有什么我可以帮助你的吗?"
|
||
}
|
||
]
|
||
}'</code>
|
||
</pre></div></div><div class="tab-pane fade" id=fcedab role=tabpanel aria-labelledby=nav-1><div class="alert alert-success d-flex" role=alert><div class="flex-shrink-1 alert-icon"></div><div class=w-100><ul><li>messages - 对话消息,提供给 AI 的消息记录</li></ul></div></div></div><div class="tab-pane fade" id=cafbed role=tabpanel aria-labelledby=nav-1><div class=prism-codeblock><pre id=866d5e0 class=language-json>
|
||
<code>{
|
||
"code": 200,
|
||
"statusText": "",
|
||
"message": "",
|
||
"data": [
|
||
"你对AI有什么看法?",
|
||
"想了解AI的应用吗?",
|
||
"你希望AI能做什么?"
|
||
]
|
||
}</code>
|
||
</pre></div></div></div></div><div class="gitinfo d-flex flex-wrap justify-content-between align-items-center opacity-85 pt-3"><div id=edit-this-page class=mt-1><a href=https://github.com/labring/FastGPT/blob/main/docSite/content/zh-cn/docs/development/openapi/chat.md alt=对话接口 rel="noopener noreferrer" target=_blank><span class="me-1 align-text-bottom"><svg width="20" height="20" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" fill="currentcolor"><path d="M16 .396c-8.839.0-16 7.167-16 16 0 7.073 4.584 13.068 10.937 15.183.803.151 1.093-.344 1.093-.772.0-.38-.009-1.385-.015-2.719-4.453.964-5.391-2.151-5.391-2.151-.729-1.844-1.781-2.339-1.781-2.339-1.448-.989.115-.968.115-.968 1.604.109 2.448 1.645 2.448 1.645 1.427 2.448 3.744 1.74 4.661 1.328.14-1.031.557-1.74 1.011-2.135-3.552-.401-7.287-1.776-7.287-7.907.0-1.751.62-3.177 1.645-4.297-.177-.401-.719-2.031.141-4.235.0.0 1.339-.427 4.4 1.641 1.281-.355 2.641-.532 4-.541 1.36.009 2.719.187 4 .541 3.043-2.068 4.381-1.641 4.381-1.641.859 2.204.317 3.833.161 4.235 1.015 1.12 1.635 2.547 1.635 4.297.0 6.145-3.74 7.5-7.296 7.891.556.479 1.077 1.464 1.077 2.959.0 2.14-.02 3.864-.02 4.385.0.416.28.916 1.104.755 6.4-2.093 10.979-8.093 10.979-15.156.0-8.833-7.161-16-16-16z"/></svg></span>编辑此页面</a></div></div></div><div><hr class=doc-hr><div id=doc-nav class=d-print-none><div class="row flex-xl-nowrap"><div class="col-sm-6 pt-2 doc-next"><a href=/docs/development/openapi/intro/><div class="card h-100 my-1"><div class="card-body py-2"><p class="card-title fs-5 fw-semibold lh-base mb-0"><i class="material-icons align-middle">navigate_before</i> OpenAPI 介绍</p><p class="card-text ms-2">FastGPT OpenAPI 介绍</p></div></div></a></div><div class="col-sm-6 pt-2 doc-prev"><a class=ms-auto href=/docs/development/openapi/dataset/><div class="card h-100 my-1 text-end"><div class="card-body py-2"><p class="card-title fs-5 fw-semibold lh-base mb-0">知识库接口 <i class="material-icons align-middle">navigate_next</i></p><p class="card-text me-2">FastGPT OpenAPI 知识库接口</p></div></div></a></div></div></div></div></div></div></div></div><footer class="shadow py-3 d-print-none"><div class="row align-items-center" style=height:90px><div class=col><div class="text-sm-start text-center mx-md-2"><p class=mb-0>© 2025 the FastGPT Authors.</p><p class=github-badge><span class=badge-subject>云操作系统</span><span class="badge-value bg-blue"><a style=color:#fff href=https://sealos.io/ target=_blank>Sealos</a></span>
|
||
<span class=badge-subject>云开发</span><span class="badge-value bg-brightgreen"><a style=color:#fff href=https://laf.run target=_blank>Laf</a></span>
|
||
<span class=badge-subject>云原生存储</span><span class="badge-value bg-orange"><a style=color:#fff href=https://github.com/labring/sealfs target=_blank>Sealfs</a></span></p><div id=fixed-box><div class=feedback-btn-wrapper><a href=https://fael3z0zfze.feishu.cn/share/base/form/shrcnRxj3utrzjywsom96Px4sud style=text-decoration:none target=_blank><button id=feedback-btn title="Give feedback"><svg class="inline w-5 h-5" viewBox="0 0 20 20" fill="currentcolor"><path fill-rule="evenodd" d="M18 13V5a2 2 0 00-2-2H4A2 2 0 002 5v8a2 2 0 002 2h3l3 3 3-3h3a2 2 0 002-2zM5 7a1 1 0 011-1h8a1 1 0 110 2H6A1 1 0 015 7zm1 3a1 1 0 100 2h3a1 1 0 100-2H6z" clip-rule="evenodd"/></svg>
|
||
<span _msttexthash=6039839 _msthash=295>咨询合作</span></button></a></div></div></div></div></div></footer></main></div></div><button onclick=topFunction() id=back-to-top aria-label="Back to Top Button" class="back-to-top fs-5"><svg width="24" height="24"><path d="M12 10.224l-6.3 6.3-1.38-1.372L12 7.472l7.68 7.68-1.38 1.376z" style="fill:#fff"/></svg></button>
|
||
<script>(()=>{var e=document.getElementById("mode");e!==null&&(window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",e=>{e.matches?(localStorage.setItem("theme","dark"),document.documentElement.setAttribute("data-dark-mode","")):(localStorage.setItem("theme","light"),document.documentElement.removeAttribute("data-dark-mode"))}),e.addEventListener("click",()=>{document.documentElement.toggleAttribute("data-dark-mode"),localStorage.setItem("theme",document.documentElement.hasAttribute("data-dark-mode")?"dark":"light")}),localStorage.getItem("theme")==="dark"?document.documentElement.setAttribute("data-dark-mode",""):document.documentElement.removeAttribute("data-dark-mode"))})()</script><script src=/docs/js/bootstrap.58faa4dc6cac13820c8a72b1fdd5d716641b3129ef981b1956fa23d69ad59f180fed6d42cb92030ac272ba85e7f8247d.js integrity=sha384-WPqk3GysE4IMinKx/dXXFmQbMSnvmBsZVvoj1prVnxgP7W1Cy5IDCsJyuoXn+CR9 defer></script>
|
||
<script type=text/javascript src=https://doc.tryfastgpt.ai/docs/js/bundle.min.68e80f383e0615acc689eae489a8c1d728bea3861d874ec1044cc85566fd9ff1b10385a1feadd324701c587f66e425bc.js integrity=sha384-aOgPOD4GFazGierkiajB1yi+o4Ydh07BBEzIVWb9n/GxA4Wh/q3TJHAcWH9m5CW8 crossorigin=anonymous defer></script>
|
||
<script src=https://cdn.jsdelivr.net/npm/medium-zoom/dist/medium-zoom.min.js crossorigin=anonymous referrerpolicy=no-referrer></script>
|
||
<script>const images=Array.from(document.querySelectorAll(".medium-zoom-image"));images.forEach(e=>{mediumZoom(e,{margin:0,scrollOffset:40,container:null,template:null,background:"rgba(0, 0, 0, 0.8)"})})</script><script>window.addEventListener("DOMContentLoaded",function(){docsearch({container:"#docsearch",appId:"5BEWEMH0YA",apiKey:"14834e919a87217d919d6d881fcacac3",indexName:"fastgpt",placeholder:"搜索",translations:{button:{buttonText:"搜索",buttonAriaLabel:"搜索"},modal:{startScreen:{noRecentSearchesText:"没有最近搜索"},footer:{selectText:"选中",selectKeyAriaLabel:"Enter key",navigateText:"导航",navigateUpKeyAriaLabel:"Arrow up",navigateDownKeyAriaLabel:"Arrow down",closeText:"关闭",closeKeyAriaLabel:"Escape key",searchByText:"搜索提供"},noResultsScreen:{noResultsText:"没有结果:",suggestedQueryText:"试试搜索",reportMissingResultsText:"Believe this query should return results?",reportMissingResultsLinkText:"Let us know."}}}})})</script></body></html> |