GITBOOK-55: change request with no subject merged in GitBook

pull/29/head
Luyu Zhang 2023-12-23 15:39:07 +00:00 committed by gitbook-bot
parent 51b180fb83
commit b865f6ebcd
No known key found for this signature in database
GPG Key ID: 07D2180C7B12D0FF
65 changed files with 357 additions and 385 deletions

View File

@ -1,6 +1,6 @@
# 欢迎使用 Dify
**Dify** 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务Backend as Service和 [LLMOps](getting-started/what-is-llmops.md) 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中。
**Dify** 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务Backend as Service和 [LLMOps](learn-more/extended-reading/what-is-llmops.md) 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中。
由于 Dify 内置了构建 LLM 应用所需的关键技术栈,包括对数百个模型的支持、直观的 Prompt 编排界面、高质量的 RAG 引擎以及灵活的 Agent 框架,并同时提供了一套易用的界面和 API。这为开发者节省了许多重复造轮子的时间使其可以专注在创新和业务需求上。
@ -28,8 +28,8 @@ Dify 一词源自 Define + Modify意指定义并且持续的改进你的 AI
### 下一步行动
* 阅读[**快速开始**](application/creating-an-application.md)****速览 Dify 的应用构建流程
* 了解如何[**自部署 Dify 到服务器**](getting-started/install-self-hosted/)上,并[**接入开源模型**](advanced/model-configuration/)
* 阅读[**快速开始**](guides/application-design/creating-an-application.md)****速览 Dify 的应用构建流程
* 了解如何[**自部署 Dify 到服务器**](getting-started/install-self-hosted/)上,并[**接入开源模型**](guides/model-configuration/)
* 了解 Dify 的**特性清单**和 **Roadmap**
* 在 [**GitHub**](https://github.com/langgenius/dify) 上为我们点亮一颗星,并阅读我们的**贡献指南**

View File

@ -9,80 +9,72 @@
* [本地源码启动](getting-started/install-self-hosted/local-source-code.md)
* [单独启动前端 Docker 容器](getting-started/install-self-hosted/start-the-frontend-docker-container.md)
* [环境变量说明](getting-started/install-self-hosted/environments.md)
* [什么是 LLMOps](getting-started/what-is-llmops.md)
* [常见问题](getting-started/faq/README.md)
* [本地部署相关](getting-started/faq/install-faq.md)
* [LLM 配置与使用](getting-started/faq/llms-use-faq.md)
* [API 使用](getting-started/faq/api-use-faq.md)
## 应用 <a href="#application" id="application"></a>
## 手册 <a href="#guides" id="guides"></a>
* [创建应用](application/creating-an-application.md)
* [快速发布 AI 站点](application/launch-your-webapp-quickly.md)
* [设计提示词&编排应用](application/prompt-engineering/README.md)
* [文本生成型应用](application/prompt-engineering/text-generation-application.md)
* [对话型应用](application/prompt-engineering/conversation-application.md)
* [外部数据工具](application/prompt-engineering/external\_data\_tool.md)
* [敏感内容审查](application/prompt-engineering/moderation\_tool.md)
* [基于 APIs 开发](application/developing-with-apis.md)
* [日志与标注](application/logs.md)
## Web 应用 <a href="#we-b" id="we-b"></a>
* [概览](web-application/overview.md)
* [文本生成型应用](web-application/text-generator.md)
* [对话型应用](web-application/conversation-application.md)
## 探索 <a href="#explore" id="explore"></a>
* [发现](explore/app.md)
* [智聊](explore/chat.md)
## 进阶使用 <a href="#advanced" id="advanced"></a>
* [提示词编排专家模式](advanced/prompt-engineering/README.md)
* [提示词初始模版参考](advanced/prompt-engineering/prompt-engineering-template.md)
* [检索增强生成](advanced/retrieval-augment/README.md)
* [混合检索](advanced/retrieval-augment/hybrid-search.md)
* [重排序](advanced/retrieval-augment/rerank.md)
* [召回模式](advanced/retrieval-augment/retrieval.md)
* [数据集管理](advanced/datasets/README.md)
* [从 Notion 导入数据](advanced/datasets/sync-from-notion.md)
* [通过 API 维护数据集](advanced/datasets/maintain-dataset-via-api.md)
* [标注回复](advanced/annotation-reply.md)
* [插件](advanced/ai-plugins.md)
* [基于前端模版再开发](advanced/based-on-frontend-templates.md)
* [模型配置](advanced/model-configuration/README.md)
* [接入 Hugging Face 上的开源模型](advanced/model-configuration/hugging-face.md)
* [接入 Replicate 上的开源模型](advanced/model-configuration/replicate.md)
* [接入 Xinference 部署的本地模型](advanced/model-configuration/xinference.md)
* [接入 OpenLLM 部署的本地模型](advanced/model-configuration/openllm.md)
* [接入 LocalAI 部署的本地模型](advanced/model-configuration/localai.md)
* [更多集成](advanced/more-integration.md)
* [扩展外部能力](advanced/extension/README.md)
* [API 扩展](advanced/extension/api\_based\_extension/README.md)
* [外部数据工具](advanced/extension/api\_based\_extension/external\_data\_tool.md)
* [敏感内容审查](advanced/extension/api\_based\_extension/moderation.md)
* [代码扩展](advanced/extension/code\_based\_extension/README.md)
* [外部数据工具](advanced/extension/code\_based\_extension/external\_data\_tool.md)
* [敏感内容审查](advanced/extension/code\_based\_extension/moderation.md)
## 使用案例 <a href="#use-cases" id="use-cases"></a>
* [如何训练出专属于“你”的问答机器人?](use-cases/train-a-qa-chatbot-that-belongs-to-you.md)
* [教你十几分钟不用代码创建 Midjourney 提示词机器人](use-cases/create-a-midjoureny-prompt-word-robot-with-zero-code.md)
* [零代码,使用 Dify 两分钟接入企业微信](use-cases/integrate-with-wecom-using-dify.md)
* [构建一个 Notion AI 助手](use-cases/build-an-notion-ai-assistant.md)
* [如何在几分钟内创建一个带有业务数据的官网 AI 智能客服](use-cases/create-an-ai-chatbot-with-business-data-in-minutes.md)
* [使用全套开源工具构建 LLM 应用实战:在 Dify 调用 Baichuan 开源模型能力](use-cases/shi-yong-quan-tao-kai-yuan-gong-ju-gou-jian-llm-ying-yong-shi-zhan-zai-dify-tiao-yong-baichuan-kai-y.md)
* [应用构建](guides/application-design/README.md)
* [创建应用](guides/application-design/creating-an-application.md)
* [提示词编排](guides/application-design/prompt-engineering/README.md)
* [文本生成型应用](guides/application-design/prompt-engineering/text-generation-application.md)
* [对话型应用](guides/application-design/prompt-engineering/conversation-application.md)
* [提示词编排专家模式](guides/application-design/prompt-engineering-1/README.md)
* [提示词初始模版参考](guides/application-design/prompt-engineering-1/prompt-engineering-template.md)
* [标注回复](guides/application-design/annotation-reply.md)
* [敏感内容审查](guides/application-design/moderation-tool.md)
* [扩展外部能力](guides/application-design/extension/README.md)
* [API 扩展](guides/application-design/extension/api\_based\_extension/README.md)
* [外部数据工具](guides/application-design/extension/api\_based\_extension/external\_data\_tool.md)
* [敏感内容审查](guides/application-design/extension/api\_based\_extension/moderation.md)
* [代码扩展](guides/application-design/extension/code\_based\_extension/README.md)
* [外部数据工具](guides/application-design/extension/code\_based\_extension/external\_data\_tool.md)
* [敏感内容审查](guides/application-design/extension/code\_based\_extension/moderation.md)
* [发布应用](guides/application-publishing/README.md)
* [发布为公开 Web 站点](guides/application-publishing/launch-your-webapp-quickly/README.md)
* [Web 应用的设置](guides/application-publishing/launch-your-webapp-quickly/web-app-settings.md)
* [文本生成型应用](guides/application-publishing/launch-your-webapp-quickly/text-generator.md)
* [对话型应用](guides/application-publishing/launch-your-webapp-quickly/conversation-application.md)
* [基于 APIs 开发](guides/application-publishing/developing-with-apis.md)
* [基于前端组件再开发](guides/application-publishing/based-on-frontend-templates.md)
* [模型配置](guides/model-configuration/README.md)
* [接入 Hugging Face 上的开源模型](guides/model-configuration/hugging-face.md)
* [接入 Replicate 上的开源模型](guides/model-configuration/replicate.md)
* [接入 Xinference 部署的本地模型](guides/model-configuration/xinference.md)
* [接入 OpenLLM 部署的本地模型](guides/model-configuration/openllm.md)
* [接入 LocalAI 部署的本地模型](guides/model-configuration/localai.md)
* [知识库](guides/knowledge-base/README.md)
* [从 Notion 导入数据](guides/knowledge-base/sync-from-notion.md)
* [通过 API 维护数据集](guides/knowledge-base/maintain-dataset-via-api.md)
* [外部数据工具](guides/knowledge-base/external\_data\_tool.md)
* [日志与标注](guides/logs.md)
* [工作空间](guides/workspace/README.md)
* [邀请与管理成员](guides/workspace/invite-and-manage-members.md)
* [发现](guides/workspace/app/README.md)
* [智聊](guides/workspace/app/chat.md)
## 社区 <a href="#community" id="community"></a>
* [寻求支持](community/support.md)
* [开源协议](community/open-source.md)
* [数据安全](community/data-security.md)
* [用户协议](community/agreement/README.md)
* [服务协议](community/agreement/terms-of-service.md)
* [隐私条款](community/agreement/privacy-policy.md)
## 用户协议 <a href="#user-agreement" id="user-agreement"></a>
## 阅读更多 <a href="#learn-more" id="learn-more"></a>
* [服务协议](user-agreement/terms-of-service.md)
* [隐私协议](user-agreement/privacy-policy.md)
* [应用案例](learn-more/use-cases/README.md)
* [如何训练出专属于“你”的问答机器人?](learn-more/use-cases/train-a-qa-chatbot-that-belongs-to-you.md)
* [教你十几分钟不用代码创建 Midjourney 提示词机器人](learn-more/use-cases/create-a-midjoureny-prompt-word-robot-with-zero-code.md)
* [零代码,使用 Dify 两分钟接入企业微信](learn-more/use-cases/integrate-with-wecom-using-dify.md)
* [构建一个 Notion AI 助手](learn-more/use-cases/build-an-notion-ai-assistant.md)
* [如何在几分钟内创建一个带有业务数据的官网 AI 智能客服](learn-more/use-cases/create-an-ai-chatbot-with-business-data-in-minutes.md)
* [使用全套开源工具构建 LLM 应用实战:在 Dify 调用 Baichuan 开源模型能力](learn-more/use-cases/shi-yong-quan-tao-kai-yuan-gong-ju-gou-jian-llm-ying-yong-shi-zhan-zai-dify-tiao-yong-baichuan-kai-y.md)
* [扩展阅读/指南](learn-more/extended-reading/README.md)
* [什么是 LLMOps](learn-more/extended-reading/what-is-llmops.md)
* [检索增强生成RAG](learn-more/extended-reading/retrieval-augment/README.md)
* [混合检索](learn-more/extended-reading/retrieval-augment/hybrid-search.md)
* [重排序](learn-more/extended-reading/retrieval-augment/rerank.md)
* [召回模式](learn-more/extended-reading/retrieval-augment/retrieval.md)
* [常见问题](learn-more/faq/README.md)
* [本地部署相关](learn-more/faq/install-faq.md)
* [LLM 配置与使用](learn-more/faq/llms-use-faq.md)
* [API 使用](learn-more/faq/api-use-faq.md)

View File

@ -1,5 +0,0 @@
# 插件
{% hint style="info" %}
插件是 Dify 即将推出的功能,你可以将插件纳入 App 编排之中,通过一个 API 或 WebApp 访问具备插件能力的 AI 应用。Dify 兼容了 ChatGPT Plugins 标准的插件,并提供了一些原生插件。
{% endhint %}

View File

@ -1,3 +0,0 @@
# 更多集成
TODO

View File

@ -0,0 +1,19 @@
# 用户协议
{% content-ref url="terms-of-service.md" %}
[terms-of-service.md](terms-of-service.md)
{% endcontent-ref %}
{% content-ref url="privacy-policy.md" %}
[privacy-policy.md](privacy-policy.md)
{% endcontent-ref %}
### 关于数据安全
我们非常重视您的数据安全,并正在推进获得 SOC2 和 ISO27001 认证。
Dify.AI 的云服务位于美国区的 AWS 上,仅极少数获得授权的人员经审批后才可访问用户的数据。另外,我们的代码均在 GitHub 开源,如果您对云服务有安全担忧可以使用自部署版本。
在 Dify 的自部署版本中,仅有一处调用 Dify 服务器,即检查当前版本更新 API 的功能。且必须由管理员在后台触发。其它没有任何使用到远程服务器的技术,因此您可以安全使用。
如果您仍有疑虑,可以通过设置防火墙等方式对数据进行保护。

View File

@ -1,13 +0,0 @@
# 数据安全
感谢您对 Dify 产品的关注Dify 非常重视您的数据安全。请参阅我们的[【隐私协议】](https://docs.dify.ai/v/zh-hans/user-agreement/privacy-policy) 。
可以透露的是Dify 的云服务位于美国 Azure仅极少数获得授权的人员经审批后才可访问用户的数据。另外我们的代码均在 GitHub 开源,如果您对云服务有安全担忧可以使用自部署版本。
由于我们的产品还处于早期阶段,或许我们仍有一些工作做得不足,但我们有计划获得 SOC2 和 ISO27001 认证。
如果您有商业化方面的疑问,请联系 business@dify.ai
在 Dify 的自部署版本中,仅有一处调用 Dify 服务器,即检查当前版本更新 API 的功能。且必须由管理员在后台触发。其它没有任何使用到远程服务器的技术,因此您可以安全使用。
如果您仍有疑虑,可以通过设置防火墙等方式对数据进行保护。

View File

@ -14,4 +14,6 @@ Dify 项目在 Apache License 2.0 许可下开源,同时包含以下附加条
* 生产者有权将开源协议调整为更严格或更宽松的形式。
* 可用于商业目的,例如 Dify 的云业务。
除此之外,所有其他权利和限制均遵循 Apache License 2.0。如果你需要更多详细信息,可以参考 Apache License 2.0 的完整版本。本产品的交互设计受到外观专利保护。© 2023 LangGenius, Inc.
除此之外,所有其他权利和限制均遵循 Apache License 2.0。如果你需要更多详细信息,可以参考 Apache License 2.0 的完整版本。本产品的交互设计受到外观专利保护。
© 2023 LangGenius, Inc.

View File

@ -8,7 +8,6 @@ Dify 为所有人提供了[云服务](http://cloud.dify.ai),你无需自己部
1. 登录 [Dify 云服务](https://cloud.dify.ai),创建一个或加入已有的 Workspace
2. 配置你的模型供应商,或使用我们提供的托管模型供应商
3. 可以[创建应用](../application/creating-an-application.md)了!
3. 可以[创建应用](../guides/application-design/creating-an-application.md)了!
目前我们没有收费计划,如果你喜欢请将这款 LLMOps 产品介绍给身边的朋友😄。

View File

@ -0,0 +1,21 @@
# 应用构建
在 Dify 中,一个“应用”是指基于 GPT 等大型语言模型构建的实际场景应用。通过创建应用,您可以将智能 AI 技术应用于特定的需求。它既包含了开发 AI 应用的工程范式,也包含了具体的交付物。
简而言之,一个应用为开发者交付了:
* 封装友好的 LLM API可由后端或前端应用直接调用通过 Token 鉴权
* 开箱即用、美观且托管的 Web App你可以 WebApp 的模版进行二次开发
* 一套包含 Prompt Engineering、上下文管理、日志分析和标注的易用界面
你可以任选**其中之一**或**全部**,来支撑你的 AI 应用开发。
### 应用类型
Dify 中提供了两种应用类型文本生成型与对话型今后或许会出现更多应用范式我们应该会及时跟进Dify 的最终目标是能覆盖 80% 以上的常规 LLM 应用情景。
文本生成型与对话型应用的区别见下表:
<table><thead><tr><th width="180.33333333333331"></th><th>文本生成型</th><th>对话型</th></tr></thead><tbody><tr><td>WebApp 界面</td><td>表单+结果式</td><td>聊天式</td></tr><tr><td>WebAPI 端点</td><td><code>completion-messages</code></td><td><code>chat-messages</code></td></tr><tr><td>交互方式</td><td>一问一答</td><td>多轮对话</td></tr><tr><td>流式结果返回</td><td>支持</td><td>支持</td></tr><tr><td>上下文保存</td><td>当次</td><td>持续</td></tr><tr><td>用户输入表单</td><td>支持</td><td>支持</td></tr><tr><td>数据集与插件</td><td>支持</td><td>支持</td></tr><tr><td>AI 开场白</td><td>不支持</td><td>支持</td></tr><tr><td>情景举例</td><td>翻译、判断、索引</td><td>聊天或一切</td></tr></tbody></table>
###

View File

@ -1,7 +1,5 @@
# 标注回复
### 功能介绍
标注回复功能通过人工编辑标注为应用提供了可定制的高质量问答回复能力。
适用情景:
@ -11,7 +9,7 @@
标注回复功能相当于提供了另一套检索增强系统,可以跳过 LLM 的生成环节,规避 RAG 的生成幻觉问题。
使用流程
### 使用流程
1. 在开启标注回复功能之后,你可以对 LLM 对话回复内容进行标注,你可以将 LLM 回复的高质量答案直接添加为一条标注,也可以根据自己的需求编辑一条高质量答案,这些编辑的标注内容会被持久化保存;
2. 当用户再次提问相似的问题时,会将问题向量化并查询中与之相似的标注问题;
@ -19,13 +17,13 @@
4. 如果没有找到匹配项,则问题继续常规流程(传递至 LLM 或 RAG
5. 关闭标注回复功能后,系统将一直不再继续从标注内匹配回复。
<figure><img src="../.gitbook/assets/image (130).png" alt="" width="563"><figcaption><p>标注回复流程</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (130).png" alt="" width="563"><figcaption><p>标注回复流程</p></figcaption></figure>
### 提示词编排中开启标注回复
通过进入“应用构建->添加功能”开启标注回复开关:
<figure><img src="../.gitbook/assets/image (9).png" alt=""><figcaption><p>提示词编排中开启标注回复</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (9).png" alt=""><figcaption><p>提示词编排中开启标注回复</p></figcaption></figure>
开启时需要先设置标注回复的参数可设置参数包括Score 阈值 和 Embedding 模型
@ -35,27 +33,27 @@
点击保存并启用时,该设置会立即生效,系统将对所有已保存的标注利用 Embedding 模型生成嵌入保存。
<figure><img src="../.gitbook/assets/image (11).png" alt=""><figcaption><p>标注回复参数设置</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (11).png" alt=""><figcaption><p>标注回复参数设置</p></figcaption></figure>
### 在会话调试页添加标注
你可以在调试与预览页面直接在模型回复信息上添加或编辑标注。
<figure><img src="../.gitbook/assets/image (13).png" alt=""><figcaption><p>添加标注回复</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (13).png" alt=""><figcaption><p>添加标注回复</p></figcaption></figure>
编辑成你需要的高质量回复并保存。
<figure><img src="../.gitbook/assets/image (14).png" alt=""><figcaption><p>编辑标注回复</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (14).png" alt=""><figcaption><p>编辑标注回复</p></figcaption></figure>
再次输入同样的用户问题,系统将使用已保存的标注直接回复用户问题。
<figure><img src="../.gitbook/assets/image (15).png" alt=""><figcaption><p>通过已保存的标注回复用户问题</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (15).png" alt=""><figcaption><p>通过已保存的标注回复用户问题</p></figcaption></figure>
### 日志与标注中开启标注回复
通过进入“应用构建->日志与标注->标注”开启标注回复开关:
<figure><img src="../.gitbook/assets/image (3).png" alt=""><figcaption><p>日志与标注中开启标注回复</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (3).png" alt=""><figcaption><p>日志与标注中开启标注回复</p></figcaption></figure>
### 在标注后台设置标注回复参数
@ -65,22 +63,22 @@
**Embedding 模型**:用于对标注文本进行向量化,切换模型时会重新生成嵌入。
<figure><img src="../.gitbook/assets/image (4).png" alt=""><figcaption><p>设置标注回复参数</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (4).png" alt=""><figcaption><p>设置标注回复参数</p></figcaption></figure>
### 批量导入标注问答对
在批量导入功能内,你可以下载标注导入模板,按模版格式编辑标注问答对,编辑好后在此批量导入。
<figure><img src="../.gitbook/assets/image (5).png" alt=""><figcaption><p>批量导入标注问答对</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (5).png" alt=""><figcaption><p>批量导入标注问答对</p></figcaption></figure>
### 批量导出标注问答对
通过标注批量导出功能,你可以一次性导出系统内已保存的所有标注问答对。
<figure><img src="../.gitbook/assets/image (6).png" alt=""><figcaption><p>批量导出标注问答对</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (6).png" alt=""><figcaption><p>批量导出标注问答对</p></figcaption></figure>
### 查看标注回复命中历史
在标注命中历史功能内,你可以查看所有命中该条标注的编辑历史、命中的用户问题、回复答案、命中来源、匹配相似分数、命中时间等信息,你可以根据这些系统信息持续改进你的标注内容。
<figure><img src="../.gitbook/assets/image (8).png" alt=""><figcaption><p>查看标注回复命中历史</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (8).png" alt=""><figcaption><p>查看标注回复命中历史</p></figcaption></figure>

View File

@ -1,26 +1,8 @@
# 创建应用
在 Dify 中,一个“应用”是指基于 GPT 等大型语言模型构建的实际场景应用。通过创建应用,您可以将智能 AI 技术应用于特定的需求。它既包含了开发 AI 应用的工程范式,也包含了具体的交付物。
简而言之,一个应用为开发者交付了:
* 封装友好的 LLM API可由后端或前端应用直接调用通过 Token 鉴权
* 开箱即用、美观且托管的 Web App你可以 WebApp 的模版进行二次开发
* 一套包含 Prompt Engineering、上下文管理、日志分析和标注的易用界面
你可以任选**其中之一**或**全部**,来支撑你的 AI 应用开发。
### 应用类型
Dify 中提供了两种应用类型文本生成型与对话型今后或许会出现更多应用范式我们应该会及时跟进Dify 的最终目标是能覆盖 80% 以上的常规 LLM 应用情景。
文本生成型与对话型应用的区别见下表:
<table><thead><tr><th width="180.33333333333331"> </th><th>文本生成型</th><th>对话型</th></tr></thead><tbody><tr><td>WebApp 界面</td><td>表单+结果式</td><td>聊天式</td></tr><tr><td>WebAPI 端点</td><td><code>completion-messages</code></td><td><code>chat-messages</code></td></tr><tr><td>交互方式</td><td>一问一答</td><td>多轮对话</td></tr><tr><td>流式结果返回</td><td>支持</td><td>支持</td></tr><tr><td>上下文保存</td><td>当次</td><td>持续</td></tr><tr><td>用户输入表单</td><td>支持</td><td>支持</td></tr><tr><td>数据集与插件</td><td>支持</td><td>支持</td></tr><tr><td>AI 开场白</td><td>不支持</td><td>支持</td></tr><tr><td>情景举例</td><td>翻译、判断、索引</td><td>聊天或一切</td></tr></tbody></table>
### 创建应用的步骤
<figure><img src="../.gitbook/assets/create-app.png" alt=""><figcaption><p>创建应用</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/create-app.png" alt=""><figcaption><p>创建应用</p></figcaption></figure>
<details>
@ -53,10 +35,10 @@ Dify 中提供了两种应用类型:文本生成型与对话型,今后或许
### 你的应用
{% hint style="info" %}
如果你是第一次使用,这里会提示你输入 OpenAI 的 API 密钥。一个可正常使用的 LLM 密钥是使用 Dify 的前提,如果你还没有请前往[申请](https://platform.openai.com/account/api-keys)一个。
如果你是第一次使用,这里会提示你输入 OpenAI 的 API 密钥。一个可正常使用的 LLM 密钥是使用 Dify 的前提,如果你还没有请前往[申请](https://platform.openai.com/account/api-keys)一个。
{% endhint %}
<figure><img src="../.gitbook/assets/openaiKey.png" alt=""><figcaption><p>输入 OpenAI Key</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/openaiKey.png" alt=""><figcaption><p>输入 OpenAI Key</p></figcaption></figure>
**创建应用**或**选择一个已有应用**后,会来到一个显示应用概况的**应用概览页**。你可以在这里直接访问你的 WebApp 或查看 API 状态,也可以开启或关闭它们。
@ -75,6 +57,3 @@ Dify 中提供了两种应用类型:文本生成型与对话型,今后或许
* 逛一逛左侧的配置、开发和 Logs 页
* 试着参考**案例**配置一个应用
* 如果你具备开发前端应用的能力,请查阅 **API 文档**

View File

@ -2,14 +2,14 @@
开发者可通过 API 扩展模块能力,当前支持以下模块扩展:
* `moderation` 敏感内容审计&#x20;
* `external_data_tool` 外部数据工具&#x20;
* `moderation` 敏感内容审计
* `external_data_tool` 外部数据工具
在扩展模块能力之前,您需要准备一个 API 和用于鉴权的 API Key也可由 Dify 自动生成,可选)。
除了需要开发对应的模块能力,还需要遵照以下规范,以便 Dify 正确调用 API。
<figure><img src="../../../.gitbook/assets/api_based_01.png" alt=""><figcaption><p>基于 API 扩展</p></figcaption></figure>
<figure><img src="../../../../.gitbook/assets/api_based_01.png" alt=""><figcaption><p>基于 API 扩展</p></figcaption></figure>
### API 规范 <a href="#usercontentapi-gui-fan" id="usercontentapi-gui-fan"></a>
@ -194,7 +194,7 @@ Authorization: Bearer 123456
</strong></code></pre>
4. 在 Dify 配置该 API。
<figure><img src="https://github.com/langgenius/dify-docs/raw/main/zh_CN/.gitbook/assets/api_based_01.png" alt=""><figcaption><p>配置 API </p></figcaption></figure>
<figure><img src="https://github.com/langgenius/dify-docs/raw/main/zh_CN/.gitbook/assets/api_based_01.png" alt=""><figcaption><p>配置 API</p></figcaption></figure>
5. 在 App 中选择该 API 扩展。
@ -230,9 +230,7 @@ API 返回为:
1. 进入 [https://ngrok.com](https://ngrok.com) 官网,注册并下载 Ngrok 文件。
<figure><img src="../../../.gitbook/assets/download.png" alt=""><figcaption><p>Download</p></figcaption></figure>
<figure><img src="../../../../.gitbook/assets/download.png" alt=""><figcaption><p>Download</p></figcaption></figure>
2. 下载完成后,进入下载目录,根据下方说明解压压缩包,并执行说明中的初始化脚本。
* ```Shell
$ unzip /path/to/ngrok.zip
@ -240,7 +238,7 @@ API 返回为:
```
3. 查看本地 API 服务的端口:
<figure><img src="../../../.gitbook/assets/8000.png" alt=""><figcaption><p>查看端口</p></figcaption></figure>
<figure><img src="../../../../.gitbook/assets/8000.png" alt=""><figcaption><p>查看端口</p></figcaption></figure>
并运行以下命令启动:
@ -250,10 +248,10 @@ API 返回为:
启动成功的样例如下:
<figure><img src="../../../.gitbook/assets/ngrock.png" alt=""><figcaption><p>Ngrok 启动</p></figcaption></figure>
<figure><img src="../../../../.gitbook/assets/ngrock.png" alt=""><figcaption><p>Ngrok 启动</p></figcaption></figure>
4. 我们找到 Forwarding 中,如上图:`https://177e-159-223-41-52.ngrok-free.app`(此为示例域名,请替换为自己的)即为公网域名。
* 按照上述的范例,我们把本地已经启动的服务端点暴露出去,将代码范例接口:`http://127.0.0.1:8000/api/dify/receive` 替换为 `https://177e-159-223-41-52.ngrok-free.app/api/dify/receive`
此 API 端点即可公网访问。至此,我们即可在 Dify 配置该 API 端点进行本地调试代码,配置步骤请参考 [external\_data\_tool.md](../../../application/prompt-engineering/external\_data\_tool.md "mention")。
此 API 端点即可公网访问。至此,我们即可在 Dify 配置该 API 端点进行本地调试代码,配置步骤请参考 [external\_data\_tool.md](../../../knowledge-base/external\_data\_tool.md "mention")。

View File

@ -1,6 +1,6 @@
# 外部数据工具扩展
# 外部数据工具
在创建 AI 应用时,开发者可以通过 API 扩展的方式实现使用外部工具获取额外数据组装至 Prompt 中作为 LLM 额外信息。具体的实操过程可以参考 [external\_data\_tool.md](../../../application/prompt-engineering/external\_data\_tool.md "mention")。
在创建 AI 应用时,开发者可以通过 API 扩展的方式实现使用外部工具获取额外数据组装至 Prompt 中作为 LLM 额外信息。具体的实操过程可以参考 [external\_data\_tool.md](../../../knowledge-base/external\_data\_tool.md "mention")。
### 前置条件

View File

@ -18,7 +18,7 @@ OpenAI 和大多数 LLM 公司提供的模型,都带有内容审查功能,
### 功能三: 敏感词审查 Moderation 扩展
不同的企业内部往往有着不同的敏感词审查机制,企业在开发自己的 AI 应用如企业内部知识库 ChatBot需要对员工输入的查询内容作敏感词审查。为此开发者可以根据自己企业内部的敏感词审查机制写一个 API 扩展,具体可参考 [moderation.md](../../advanced/extension/api\_based\_extension/moderation.md "mention"),从而在 Dify 上调用,实现敏感词审查的高度自定义和隐私保护。
不同的企业内部往往有着不同的敏感词审查机制,企业在开发自己的 AI 应用如企业内部知识库 ChatBot需要对员工输入的查询内容作敏感词审查。为此开发者可以根据自己企业内部的敏感词审查机制写一个 API 扩展,具体可参考 [moderation.md](extension/api\_based\_extension/moderation.md "mention"),从而在 Dify 上调用,实现敏感词审查的高度自定义和隐私保护。
<figure><img src="../../.gitbook/assets/moderation_settings.png" alt=""><figcaption><p>Moderation Settings</p></figcaption></figure>

View File

@ -1,19 +1,17 @@
# 提示词编排专家模式
## 功能介绍
目前在 Dify 创建应用的编排默认为**简易模式**,这很适合想要快速创建应用的非技术人员,比如你想创建一个企业知识库 Chatbot 或者文章摘要生成器,利用**简易模式**编排对话前提示词,添加变量,添加上下文等简易步骤即可发布一个完整的应用(可参考👉[conversation-application.md](../../application/prompt-engineering/conversation-application.md "mention")[text-generation-application.md](../../application/prompt-engineering/text-generation-application.md "mention"))。
在 Dify 创建应用的编排默认为**简易模式**,这很适合想要快速创建应用的非技术人员,比如你想创建一个企业知识库 Chatbot 或者文章摘要生成器,利用**简易模式**编排对话前提示词,添加变量,添加上下文等简易步骤即可发布一个完整的应用(可参考👉[conversation-application.md](../prompt-engineering/conversation-application.md "mention")[text-generation-application.md](../prompt-engineering/text-generation-application.md "mention"))。
而如果你是一个熟练掌握使用 **OpenAI****Playground** 的技术人员,正想创建一个学习导师应用,需要在提示词中针对不同的教学模块位置嵌入不同的上下文和变量,就可以选择**专家模式。**在此模式下你可以自由地编写完整的提示词,包括修改内置的提示词,调整上下文和聊天历史内容在提示词中的位置,设定必要参数等**。**如果你对 Chat 和 Complete 两种模型不陌生,现在**专家模式**可以快速切换 Chat 和Complete 模型以满足你的需要,并且都适用于对话型应用和文本生成型应用。
在你开始尝试新模式前,你需要知道**专家模式**下的必要元素:
* **文本补全模型** ![](../../.gitbook/assets/screenshot-20231017-092613.png)
* **文本补全模型** ![](../../../.gitbook/assets/screenshot-20231017-092613.png)
在选择模型的时候,模型名字的右侧显示 COMPLETE 的即为文本补全模型,该类模型接受名为“提示词”的自由格式文本字符串,模型将生成一个文本补全,试图匹配您给它的任何上下文或模式。例如,如果您给的提示词:“正如笛卡尔所说,我思故”,它将高概率返回“我在”作为补全。
* **聊天模型** <img src="../../.gitbook/assets/screenshot-20231017-092957.png" alt="" data-size="line">
* **聊天模型** <img src="../../../.gitbook/assets/screenshot-20231017-092957.png" alt="" data-size="line">
在选择模型的时候,模型名字的右侧显示 CHAT 的即为聊天模型,该类模型将消息列表作为输入,并返回模型生成的消息作为输出。尽管聊天格式旨在简化多轮对话,但它对于没有任何对话的单轮任务同样有用。聊天模型使用的是聊天消息作为输入和输出,包含 SYSTEM / USER / ASSISTANT 三种消息类型:
@ -32,13 +30,13 @@
* **专家模式提示词中的内容块**
* <img src="../../.gitbook/assets/3.png" alt="" data-size="line">
* <img src="../../../.gitbook/assets/3.png" alt="" data-size="line">
用户在配置了数据集的 App 中输入查询内容App 会将查询内容作为数据集的检索条件,检索的结果在组织之后会作为上下文内容替换 `上下文` 变量,使 LLM 能够参考上下文的内容进行回答。
* <img src="../../.gitbook/assets/4.png" alt="" data-size="line">
* <img src="../../../.gitbook/assets/4.png" alt="" data-size="line">
查询内容仅在对话型应用的文本补全模型中可用,对话中用户输入的内容将替换该变量,以触发每轮新的对话。
* <img src="../../.gitbook/assets/5.png" alt="" data-size="line">
* <img src="../../../.gitbook/assets/5.png" alt="" data-size="line">
会话历史仅在对话型应用的文本补全模型中可用。在对话型应用中多次对话时Dify 会将历史的对话记录根据内置规则进行组装拼接,并替换 `会话历史` 变量。其中 Human 和 Assistant 前缀可点击 `会话历史` 后的`...` 进行修改。&#x20;
@ -59,7 +57,7 @@
&#x20; 创建应用后,在提示词编排页可以切换至**专家模式**,在此模式下可以编辑完整的应用提示词。
<figure><img src="../../.gitbook/assets/专家模式.png" alt=""><figcaption><p>专家模式入口</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/专家模式.png" alt=""><figcaption><p>专家模式入口</p></figcaption></figure>
{% hint style="warning" %}
在**专家模式**下修改提示词并发布应用后,将无法返回至**简易模式**。
@ -73,7 +71,7 @@
需要注意的是,我们只有先上传了上下文,在**专家模式**下才会呈现包含 \{{#context#\}} 的内置提示词
{% endhint %}
<figure><img src="../../.gitbook/assets/参数设置.png" alt=""><figcaption><p>上下文参数设置</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/参数设置.png" alt=""><figcaption><p>上下文参数设置</p></figcaption></figure>
**TopK值范围为整数 110**
@ -118,7 +116,7 @@ Assistant1: 土是黄色的
在**专家模式**下,你可以在文本编辑器中输入“`/`”,快捷调出内容块来插入提示词中。内容块分为:`上下文`、`变量`、`会话历史`、`查询内容`。你也可以通过输入“`{`”,快捷插入已创建过的变量列表。\
<figure><img src="../../.gitbook/assets/快捷键.png" alt=""><figcaption><p>快捷键 “/”</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/快捷键.png" alt=""><figcaption><p>快捷键 “/”</p></figcaption></figure>
{% hint style="warning" %}
除“`变量`”以外的其他内容块不可重复插入。在不同应用和模型下,可插入的内容块会根据不同的提示词模板结构有所区别,`会话历史`、`查询内容` 仅在对话型应用的文本补全模型中可用。
@ -155,13 +153,13 @@ And answer according to the language English.
### 6. 调试日志
编排调试时不仅可以查看用户的输入和 LLM 的回复。在**专家模式**下,点击发送消息左上角图标,可以看到完整的提示词,方便开发者确认输入变量内容、上下文、聊天记录和查询内容是否符合预期。日志列表的相关说明请查看日志文档 👉 [logs.md](../../application/logs.md "mention")
编排调试时不仅可以查看用户的输入和 LLM 的回复。在**专家模式**下,点击发送消息左上角图标,可以看到完整的提示词,方便开发者确认输入变量内容、上下文、聊天记录和查询内容是否符合预期。日志列表的相关说明请查看日志文档 👉 [logs.md](../../logs.md "mention")
#### 6.1 **查看调试日志**
在调试预览界面,用户与 AI 产生对话之后,将鼠标指针移动到任意的用户会话,即可在左上角看到“日志”标志按钮,点击即可查看提示词日志。
<figure><img src="../../.gitbook/assets/日志.png" alt=""><figcaption><p>调试日志入口</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/日志.png" alt=""><figcaption><p>调试日志入口</p></figcaption></figure>
在日志中,我们可以清晰的查看到:
@ -169,7 +167,7 @@ And answer according to the language English.
* 当前会话引用的相关文本片段
* 历史会话记录
<figure><img src="../../.gitbook/assets/11.png" alt=""><figcaption><p>调试预览界面查看提示词日志</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/11.png" alt=""><figcaption><p>调试预览界面查看提示词日志</p></figcaption></figure>
从日志中,我们可以查看经过系统拼装后最终发送至 LLM 的完整提示词,并根据调试结果持续改进提示词输入。
@ -177,4 +175,4 @@ And answer according to the language English.
在初始的构建应用主界面,左侧导航栏可以看到“日志与标注”,点击进去即可查看完整的日志。 在日志与标注的主界面,点击任意一个会话日志条目,在弹出的右侧对话框中同样鼠标指针移动到会话上即可点开“日志”按钮查看提示词日志。
<figure><img src="../../.gitbook/assets/12.png" alt=""><figcaption><p>日志与标注界面查看提示词日志</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/12.png" alt=""><figcaption><p>日志与标注界面查看提示词日志</p></figcaption></figure>

View File

@ -16,13 +16,13 @@
在首页点击 “创建应用” 按钮创建应用。填上应用名称,应用类型选择**对话型应用**。
<figure><img src="../../.gitbook/assets/image (43).png" alt=""><figcaption><p>创建应用</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (43).png" alt=""><figcaption><p>创建应用</p></figcaption></figure>
#### 第 2 步 编排应用
应用成功后会自动跳转到应用概览页。点击左侧菜单:**提示词编排** 来编排应用。
<figure><img src="../../.gitbook/assets/image (29).png" alt=""><figcaption><p>编排应用</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (29).png" alt=""><figcaption><p>编排应用</p></figcaption></figure>
**2.1 填写提示词**
@ -34,40 +34,36 @@
>
> 当我回准备好了后,开始提问。
![](<../../.gitbook/assets/image (80).png>)
![](<../../../.gitbook/assets/image (80).png>)
为了更好的体验,我们加上对话开场白:`你好,{{name}}。我是你的面试官Bob。你准备好了吗`
添加开场白的方法是,点击左上角的 “添加功能” 按钮,打开 “对话开场白” 的功能:
<figure><img src="../../.gitbook/assets/image (68).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (68).png" alt=""><figcaption></figcaption></figure>
然后编辑开场白:
![](<../../.gitbook/assets/image (28).png>)
![](<../../../.gitbook/assets/image (28).png>)
#### 2.2 添加上下文
如果应用想基于私有的上下文对话来生成内容。可以用我们[数据集](../../advanced/datasets/)功能。在上下文中点 “添加” 按钮来添加数据集。
如果应用想基于私有的上下文对话来生成内容。可以用我们[数据集](../../knowledge-base/)功能。在上下文中点 “添加” 按钮来添加数据集。
![](<../../.gitbook/assets/image (108).png>)
![](<../../../.gitbook/assets/image (108).png>)
**2.3 调试**
我们在右侧填写 用户输入,输入内容进行调试。
![](<../../.gitbook/assets/image (67).png>)
![](<../../../.gitbook/assets/image (67).png>)
如果结果不理想,可以调整提示词和模型参数。点右上角点 模型名称 来设置模型的参数:
![](<../../.gitbook/assets/image (76).png>)
![](<../../../.gitbook/assets/image (76).png>)
我们支持模型 gpt-4。
**2.4 发布**
调试好应用后,点击右上角的 **“发布”** 按钮来保存当前的设置。
@ -76,8 +72,6 @@
在概览页可以找到应用的分享地址。点 “预览按钮” 预览分享出去的应用。点 “分享” 按钮获得分享的链接地址。点 “设置” 按钮设置分享出去的应用信息。
<figure><img src="../../.gitbook/assets/image (54).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (54).png" alt=""><figcaption></figcaption></figure>
如果想定制化分享出去的应用,可以 Fork 我们的开源的 [WebApp 的模版](https://github.com/langgenius/webapp-conversation)。基于模版改成符合你的情景与风格需求的应用。

View File

@ -16,13 +16,13 @@
在首页点击 “创建应用” 按钮创建应用。填上应用名称,应用类型选择**文本生成应用**。
<figure><img src="../../.gitbook/assets/image (33).png" alt=""><figcaption><p>创建应用</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (33).png" alt=""><figcaption><p>创建应用</p></figcaption></figure>
#### 第 2 步 编排应用
应用成功后会自动跳转到应用概览页。点击左侧菜单:**提示词编排** 来编排应用。
<figure><img src="../../.gitbook/assets/image (83).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (83).png" alt=""><figcaption></figcaption></figure>
**2.1 填写前缀提示词**
@ -30,31 +30,31 @@
我们在这里填写的提示词是:`将内容翻译成:{{language}}。内容如下:`
![](<../../.gitbook/assets/image (65).png>)
![](<../../../.gitbook/assets/image (65).png>)
#### 2.2 添加上下文
如果应用想基于私有的上下文对话来生成内容。可以用我们[数据集](../../advanced/datasets/)功能。在上下文中点 “添加” 按钮来添加数据集。
如果应用想基于私有的上下文对话来生成内容。可以用我们[数据集](../../knowledge-base/)功能。在上下文中点 “添加” 按钮来添加数据集。
![](<../../.gitbook/assets/image (88).png>)
![](<../../../.gitbook/assets/image (88).png>)
#### 2.3 添加功能:生成更多类似的
生成更多类似可以一次生成多条文本,可在此基础上编辑并继续生成。点击左上角的 “添加功能” 来打开该功能。
<figure><img src="../../.gitbook/assets/image (78).png" alt=""><figcaption><p>打开更多类似的功能</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (78).png" alt=""><figcaption><p>打开更多类似的功能</p></figcaption></figure>
**2.4 调试**
我们在右侧 输入变量 和 查询内容 进行调试。点 **“运行”** 按钮 查看运行的结果。
![](<../../.gitbook/assets/image (22).png>)
![](<../../../.gitbook/assets/image (22).png>)
如果结果不理想,可以调整提示词和模型参数。点右上角点 模型名称 来设置模型的参数:
<div align="left">
<figure><img src="../../.gitbook/assets/image (35).png" alt="" width="375"><figcaption><p>调整模型参数</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (35).png" alt="" width="375"><figcaption><p>调整模型参数</p></figcaption></figure>
</div>
@ -66,11 +66,6 @@
在概览页可以找到应用的分享地址。点 “预览按钮” 预览分享出去的应用。点 “分享” 按钮获得分享的链接地址。点 “设置” 按钮设置分享出去的应用信息。
<figure><img src="../../.gitbook/assets/image (31).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (31).png" alt=""><figcaption></figcaption></figure>
如果想定制化分享出去的应用,可以 Fork 我们的开源的[ WebApp 的模版](https://github.com/langgenius/webapp-text-generator)。基于模版改成符合你的情景与风格需求的应用。

View File

@ -0,0 +1,13 @@
# 发布应用
{% content-ref url="launch-your-webapp-quickly/" %}
[launch-your-webapp-quickly](launch-your-webapp-quickly/)
{% endcontent-ref %}
{% content-ref url="developing-with-apis.md" %}
[developing-with-apis.md](developing-with-apis.md)
{% endcontent-ref %}
{% content-ref url="based-on-frontend-templates.md" %}
[based-on-frontend-templates.md](based-on-frontend-templates.md)
{% endcontent-ref %}

View File

@ -15,7 +15,7 @@ Dify 基于“**后端即服务**”理念为所有应用提供了 API为 AI
选择一个应用在应用Apps左侧导航中可以找到**访问 APIAPI Access**。在该页面中你可以查看 Dify 提供的 API 文档,并管理可访问 API 的凭据。
<figure><img src="../.gitbook/assets/service-api-page.png" alt=""><figcaption><p>访问 API 文档</p></figcaption></figure>
<figure><img src="../../.gitbook/assets/service-api-page.png" alt=""><figcaption><p>访问 API 文档</p></figcaption></figure>
例如你是一个咨询公司的开发部分,你可以基于公司的私有数据库提供 AI 能力给终端用户或开发者,但开发者无法掌握你的数据和 AI 逻辑设计,从而使得服务可以安全、可持续的交付并满足商业目的。
@ -47,7 +47,7 @@ curl --location --request POST 'https://api.dify.ai/v1/completion-messages' \
### 对话型应用
可用于大部分场景的对话型应用,采用一问一答模式与用户持续对话。要开始一个对话请调用 chat-messages 接口,通过继续传入返回的 conversation_id 可持续保持该会话。
可用于大部分场景的对话型应用,采用一问一答模式与用户持续对话。要开始一个对话请调用 chat-messages 接口,通过继续传入返回的 conversation\_id 可持续保持该会话。
你可以在**应用 -> 访问 API** 中找到该应用的 API 文档与范例请求。
@ -66,8 +66,3 @@ curl --location --request POST 'https://api.dify.ai/v1/chat-messages' \
}'
```

View File

@ -1,15 +1,15 @@
# 快速发布 AI 站点
# 发布为公开 Web 站点
使用 Dify 创建 AI 应用的一个好处在于,你可以在几分钟内就发布一个可供用户使用的 Web 应用,该应用将根据你的 Prompt 编排工作。
* 如果你使用的是自部署的开源版,该应用将运行在你的服务器上
* 如果你使用的是云服务,该应用将托管至 Dify.app
* 如果你使用的是云服务,该应用将托管至 Udify.app
### 发布 AI 站点
在应用概览页中你可以找到关于AI 站点WebApp的卡片。只需开启 WebApp 的访问,就可以得到一个可分享可分享给用户的链接了。
<figure><img src="../.gitbook/assets/app-share.png" alt=""><figcaption><p>分享应用</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/app-share.png" alt=""><figcaption><p>分享应用</p></figcaption></figure>
我们对以下两种应用均提供了一个漂亮的 WebApp 界面:
@ -31,16 +31,15 @@
Dify 支持将你的 AI 应用嵌入到你的业务网站中,你可以使用该能力在几分钟内制作具有业务数据的官网 AI 客服、业务知识问答等应用。点击 WebApp 卡片上的嵌入按钮,复制嵌入代码,粘贴到你网站的目标位置。
* iframe 标签方式
* iframe 标签方式
将 iframe 代码复制到你网站用于显示 AI 应用的标签中,如 `<div>`、`<section>` 等标签。
* script 标签方式
* script 标签方式
将 script 代码复制到你网站 `<head>``<body>` 标签中。
<figure><img src="../.gitbook/assets/image (69).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (69).png" alt=""><figcaption></figcaption></figure>
例如,将 script 代码粘贴到官网的 `<body>` 处,你将得到一个官网 AI 机器人:
<figure><img src="../.gitbook/assets/image (40).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (40).png" alt=""><figcaption></figcaption></figure>

View File

@ -13,33 +13,33 @@
如你在应用编排时有设置变量的填写要求,则在对话前需要按提示填写信息才可进入对话窗口:
<figure><img src="../.gitbook/assets/image (63).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (63).png" alt=""><figcaption></figcaption></figure>
填写必要内容,点击 “开始对话” 按钮,开始聊天。
<figure><img src="../.gitbook/assets/image (94).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (94).png" alt=""><figcaption></figcaption></figure>
移动到 AI 的回答上,可以复制会话内容,给回答 “赞” 和 “踩”。
<figure><img src="../.gitbook/assets/image (26).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (26).png" alt=""><figcaption></figcaption></figure>
### 对话的创建、置顶和删除
点击 “新对话” 按钮开始一个新的对话。移动到一个会话上,可以对会话进行 “置顶” 和 “删除” 操作。
<figure><img src="../.gitbook/assets/image (47).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (47).png" alt=""><figcaption></figcaption></figure>
### 对话开场白
若在应用编排时开启了「对话开场白」功能,则在创建一个新对话时 AI 应用会自动发起第一句对话:
<figure><img src="../.gitbook/assets/image (51).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (51).png" alt=""><figcaption></figcaption></figure>
### 下一步问题建议
若在应用编排时开启了「下一步问题建议」功能,则在对话后系统自动生成 3 个相关问题建议:
<figure><img src="../.gitbook/assets/image (77).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (77).png" alt=""><figcaption></figcaption></figure>
### 语音转文字
@ -47,10 +47,10 @@
_请注意确保你使用的设备环境已经授权使用麦克风。_
<figure><img src="../.gitbook/assets/image (79).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (79).png" alt=""><figcaption></figcaption></figure>
### 引用和归属
若在应用编排时开启了「引用和归属」功能,则对话返回时,会自动展示引用的数据集文档来源。
<figure><img src="../.gitbook/assets/image (20).png" alt=""><figcaption><p>引用和归属</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (20).png" alt=""><figcaption><p>引用和归属</p></figcaption></figure>

View File

@ -2,8 +2,6 @@
文本生成类应用是一种根据用户提供的提示,自动生成高质量文本的应用。它可以生成各种类型的文本,例如文章摘要、翻译等。
文本生成型应用支持如下功能:
1. 运行一次。
@ -17,7 +15,7 @@
输入查询内容,点击运行按钮,右侧会生成结果,如下图所示:
<figure><img src="../.gitbook/assets/image (58).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (58).png" alt=""><figcaption></figcaption></figure>
在生成的结果部分,点 “复制” 按钮可以将内容复制到剪贴板。点 “保存” 按钮可以保存内容。可以在 “已保存” 选项卡中看到保存过的内容。也可以对生成的内容点 “赞” 和 “踩”。
@ -31,17 +29,17 @@
点击 “批量运行” 选项卡,则会进入批量运行页面。
<figure><img src="../.gitbook/assets/image (73).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (73).png" alt=""><figcaption></figcaption></figure>
#### 第 2 步 下载模版并填写内容
点击下载模版按钮,下载模版。编辑模版,填写内容,并另存为 `.csv` 格式的文件。
<figure><img src="../.gitbook/assets/image (36).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (36).png" alt=""><figcaption></figcaption></figure>
#### 第 3 步 上传文件并运行
<figure><img src="../.gitbook/assets/image (70).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (70).png" alt=""><figcaption></figcaption></figure>
如果需要导出生成的内容,可以点右上角的下载 “按钮” 来导出为 `csv` 文件。
@ -51,10 +49,10 @@
点击生成结果下面的 “保存” 按钮,可以保存运行结果。在 “已保存” 选项卡中,可以看到所有已保存的内容。
<figure><img src="../.gitbook/assets/image (57).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (57).png" alt=""><figcaption></figcaption></figure>
### 生成更多类似结果
如果在应用编排时开启了 “更多类似” 的功能。在 Web 应用中可以点击 “更多类似” 的按钮来生成和当前结果相似的内容。如下图所示:
<figure><img src="../.gitbook/assets/image (39).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (39).png" alt=""><figcaption></figcaption></figure>

View File

@ -2,7 +2,7 @@
## 功能介绍
此前 [knowledge](../../advanced/datasets/ "mention") 功能允许开发者可以直接上传各类格式的长文本、结构化数据来构建数据集,使 AI 应用基于用户上传的最新上下文进行对话。
此前 [.](./ "mention") 功能允许开发者可以直接上传各类格式的长文本、结构化数据来构建数据集,使 AI 应用基于用户上传的最新上下文进行对话。
而本次更新的**外部数据工具**赋能开发者可以使用自有的搜索能力或内部知识库等外部数据作为 LLM 的上下文,通过 API 扩展的方式实现外部数据的获取并嵌入提示词。相比在云端上传数据集,使用**外部数据工具**可以在保障私有数据安全,自定义搜索,获取实时数据等方面有显著优势。
@ -12,7 +12,7 @@
## 操作说明
1. 在使用外部数据工具之前,你需要准备一个 API 和用于鉴权的 API Key请阅读[external\_data\_tool.md](../../advanced/extension/api\_based\_extension/external\_data\_tool.md "mention")
1. 在使用外部数据工具之前,你需要准备一个 API 和用于鉴权的 API Key请阅读[external\_data\_tool.md](../application-design/extension/api\_based\_extension/external\_data\_tool.md "mention")
2. Dify 提供了集中式的 API 管理,在设置界面统一添加 API 扩展配置后,即可在 Dify 上的各类应用中直接使用。
<figure><img src="../../.gitbook/assets/api_based.png" alt=""><figcaption><p>API-based Extension</p></figcaption></figure>
@ -32,4 +32,3 @@
在对话日志中,我们也可以看到 API 返回的实时数据:
<figure><img src="../../.gitbook/assets/log.jpeg" alt="" width="335"><figcaption><p>Prompt Log</p></figcaption></figure>

View File

@ -1,7 +1,3 @@
---
description: 了解 Dify 支持的不同模型
---
# 模型配置
Dify 目前已支持主流的模型供应商,例如 OpenAI 的 GPT 系列、Anthropic 的 Claude 系列等。不同模型的能力表现、参数类型会不一样,你可以根据不同情景的应用需求选择你喜欢的模型供应商。**你在 Dify 应用以下模型能力前,应该前往不同的模型厂商官方网站获得他们的 API key 。**

View File

@ -0,0 +1,2 @@
# 工作空间

View File

@ -1,15 +1,21 @@
# 发现
## 模版应用
在**发现**中,提供了一些常用的模版应用。这些应用涵盖了人力资源,助手,翻译,编程和写作。
<figure><img src="./images/explore-app.jpg"></figure>
如果要使用某个模版应用,点击模版的“添加到工作区”按钮。在左侧的工作区中,可以使用该应用。
<figure><img src="./images/creat-customize-app.jpg"></figure>
## 模版应用
在**发现**中,提供了一些常用的模版应用。这些应用涵盖了人力资源,助手,翻译,编程和写作。
<figure><img src="../../../explore/images/explore-app.jpg" alt=""><figcaption></figcaption></figure>
如果要使用某个模版应用,点击模版的“添加到工作区”按钮。在左侧的工作区中,可以使用该应用。
<figure><img src="../../../explore/images/creat-customize-app.jpg" alt=""><figcaption></figcaption></figure>
如果要修改某个模版来创建一个新的应用,点击模版的“自定义”按钮。
## 工作区
工作区是应用的导航。点击工作区里的应用,可以直接使用该应用。
<figure><img src="./images/workspace.jpg"></figure>
工作区中的应用包括:自己的应用和其他团队添加到工作区中的应用。
工作区是应用的导航。点击工作区里的应用,可以直接使用该应用。
<figure><img src="../../../explore/images/workspace.jpg" alt=""><figcaption></figcaption></figure>
工作区中的应用包括:自己的应用和其他团队添加到工作区中的应用。

View File

@ -4,7 +4,7 @@
在我们和自然语言大模型对话时,经常会遇到回答内容过期或者失效的情况,这是由于大模型的训练数据较老以及无联网能力导致的,智聊在大模型的基础上,利用代理(Agent) 的能力以及一些工具为大模型赋予了联网实时查询的能力。
<figure><img src="../.gitbook/assets/image (89).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (89).png" alt=""><figcaption></figcaption></figure>
智聊支持使用插件和数据集。
@ -18,12 +18,10 @@
使用代理模式,可以解决上面的问题:当大语言模型没法解答用户的问题时,会尝试使用现有的插件来解答问题。
{% hint style="info" %}
在 Dify 中对于不同的模型我们用了不同的代理策略。OpenAI 的模型使用的代理策略是 **GPT function call。**其他模型使用是 **`ReACT`**`。目前测试的体验是`**GPT function call** 的效果更好`。想了解更多,可以阅读下面的链接:`
在 Dify 中对于不同的模型我们用了不同的代理策略。OpenAI 的模型使用的代理策略是 \*\*GPT function call。\*\*其他模型使用是 **`ReACT`**`。目前测试的体验是`**GPT function call** 的效果更好`。想了解更多,可以阅读下面的链接:`
* [Function calling and other API updates](https://openai.com/blog/function-calling-and-other-api-updates)
* [ReAct: Synergizing Reasoning and Acting in Language Models](https://arxiv.org/abs/2210.03629)
{% endhint %}
目前我们支持如下插件:
@ -34,15 +32,15 @@
我们可以在对话开始前选择本次对话需要的插件。
<figure><img src="../.gitbook/assets/image (75).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (75).png" alt=""><figcaption></figcaption></figure>
如果使用谷歌搜索插件,需要配置 SerpAPI key。
<figure><img src="../.gitbook/assets/image (82).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (82).png" alt=""><figcaption></figcaption></figure>
配置的入口:
<figure><img src="../.gitbook/assets/image (104).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (104).png" alt=""><figcaption></figcaption></figure>
### 使用数据集
@ -50,13 +48,10 @@
我们可以在对话开始前选择本次对话需要的数据集。
<figure><img src="../.gitbook/assets/image (52).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (52).png" alt=""><figcaption></figcaption></figure>
### 思考的过程
思考的过程指模型使用插件和数据集的过程。我们可以在每个回答中看到思考的过程。
<figure><img src="../.gitbook/assets/image (60).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (60).png" alt=""><figcaption></figcaption></figure>

View File

@ -0,0 +1,2 @@
# 邀请与管理成员

View File

@ -0,0 +1,2 @@
# 扩展阅读/指南

View File

@ -1,4 +1,4 @@
# 检索增强生成
# 检索增强生成RAG
### RAG 的概念解释
@ -8,7 +8,7 @@
在下图中,当用户提问时 “美国总统是谁?” 时系统并不是将问题直接交给大模型来回答而是先将用户问题在知识库中如下图中的维基百科进行向量搜索通过语义相似度匹配的方式查询到相关的内容拜登是美国现任第46届总统…然后再将用户问题和搜索到的相关知识提供给大模型使得大模型获得足够完备的知识来回答问题以此获得更可靠的问答结果。
<figure><img src="../../.gitbook/assets/image (129).png" alt=""><figcaption><p>RAG 基本架构</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (129).png" alt=""><figcaption><p>RAG 基本架构</p></figcaption></figure>
**为什么需要这样做呢?**

View File

@ -29,7 +29,7 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
在混合检索中,你需要在数据库中提前建立向量索引和关键词索引,在用户问题输入时,分别通过两种检索器在文档中检索出最相关的文本。
<figure><img src="../../.gitbook/assets/image (127).png" alt="" width="563"><figcaption><p>混合检索</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (127).png" alt="" width="563"><figcaption><p>混合检索</p></figcaption></figure>
“混合检索”实际上并没有明确的定义,本文以向量检索和关键词检索的组合为示例。如果我们使用其他搜索算法的组合,也可以被称为“混合检索”。比如,我们可以将用于检索实体关系的知识图谱技术与向量检索技术结合。
@ -40,7 +40,7 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
定义:通过生成查询嵌入并查询与其向量表示最相似的文本分段。
<figure><img src="../../.gitbook/assets/image (116).png" alt="" width="563"><figcaption><p>向量检索设置</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (116).png" alt="" width="563"><figcaption><p>向量检索设置</p></figcaption></figure>
**TopK**用于筛选与用户问题相似度最高的文本片段。系统同时会根据选用模型上下文窗口大小动态调整片段数量。系统默认值为 3 。
@ -53,7 +53,7 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
定义:索引文档中的所有词汇,从而允许用户查询任意词汇,并返回包含这些词汇的文本片段。
<figure><img src="../../.gitbook/assets/image (122).png" alt="" width="563"><figcaption><p>全文检索设置</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (122).png" alt="" width="563"><figcaption><p>全文检索设置</p></figcaption></figure>
**TopK**用于筛选与用户问题相似度最高的文本片段。系统同时会根据选用模型上下文窗口大小动态调整片段数量。系统默认值为 3 。
@ -64,7 +64,7 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
同时执行全文检索和向量检索,并应用重排序步骤,从两类查询结果中选择匹配用户问题的最佳结果,需配置 Rerank 模型 API。
<figure><img src="../../.gitbook/assets/image (118).png" alt="" width="563"><figcaption><p>混合检索设置</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (118).png" alt="" width="563"><figcaption><p>混合检索设置</p></figcaption></figure>
**TopK**用于筛选与用户问题相似度最高的文本片段。系统同时会根据选用模型上下文窗口大小动态调整片段数量。系统默认值为 3 。
@ -75,13 +75,13 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
通过进入“数据集->创建数据集”页面并在检索设置中设置不同的检索模式:
<figure><img src="../../.gitbook/assets/image (119).png" alt="" width="563"><figcaption><p>创建数据集时设置检索模式</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (119).png" alt="" width="563"><figcaption><p>创建数据集时设置检索模式</p></figcaption></figure>
### 数据集设置中修改检索模式
通过进入“数据集->选择数据集->设置”页面中可以对已创建的数据集修改不同的检索模式。
<figure><img src="../../.gitbook/assets/image (120).png" alt="" width="563"><figcaption><p>数据集设置中修改检索模式</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (120).png" alt="" width="563"><figcaption><p>数据集设置中修改检索模式</p></figcaption></figure>
@ -89,4 +89,4 @@ RAG 检索环节中的主流方法是向量检索,即语义相关度匹配的
通过进入“提示词编排->上下文->选择数据集->设置”页面中可以在创建应用时修改不同的检索模式。
<figure><img src="../../.gitbook/assets/image (121).png" alt=""><figcaption><p>提示词编排中修改检索模式</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (121).png" alt=""><figcaption><p>提示词编排中修改检索模式</p></figcaption></figure>

View File

@ -6,7 +6,7 @@
**重排序模型通过将候选文档列表与用户问题语义匹配度进行重新排序,从而改进语义排序的结果**。其原理是计算用户问题与给定的每个候选文档之间的相关性分数,并返回按相关性从高到低排序的文档列表。常见的 Rerank 模型如Cohere rerank、bge-reranker 等。
<figure><img src="../../.gitbook/assets/image (128).png" alt=""><figcaption><p>混合检索+重排序</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (128).png" alt=""><figcaption><p>混合检索+重排序</p></figcaption></figure>
在大多数情况下,在重排序之前会有一次前置检索,这是由于计算查询与数百万个文档之间的相关性得分将会非常低效。所以,**重排序一般都放在搜索流程的最后阶段,非常适合用于合并和排序来自不同检索系统的结果**。
@ -25,7 +25,7 @@
Dify 目前已支持 Cohere Rerank 模型,通过进入“模型供应商-> Cohere”页面填入 Rerank 模型的 API 秘钥:
<figure><img src="../../.gitbook/assets/image (112).png" alt=""><figcaption><p>在模型供应商内配置 Cohere Rerank 模型</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (112).png" alt=""><figcaption><p>在模型供应商内配置 Cohere Rerank 模型</p></figcaption></figure>
###
@ -39,7 +39,7 @@ Dify 目前已支持 Cohere Rerank 模型,通过进入“模型供应商-> Coh
通过进入“数据集->创建数据集->检索设置”页面并在添加 Rerank 设置。除了在创建数据集可以设置 Rerank ,你也可以在已创建的数据集设置内更改 Rerank 配置,在应用编排的数据集召回模式设置中更改 Rerank 配置。
<figure><img src="../../.gitbook/assets/image (1) (1).png" alt="" width="563"><figcaption><p>数据集检索模式中设置 Rerank 模型</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (1) (1).png" alt="" width="563"><figcaption><p>数据集检索模式中设置 Rerank 模型</p></figcaption></figure>
**TopK**用于设置 Rerank 后返回相关文档的数量。
@ -52,4 +52,4 @@ Dify 目前已支持 Cohere Rerank 模型,通过进入“模型供应商-> Coh
关于多路召回模式的说明:🔗
<figure><img src="../../.gitbook/assets/image (1) (1) (1).png" alt=""><figcaption><p>数据集多路召回模式中设置 Rerank 模型</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (1) (1) (1).png" alt=""><figcaption><p>数据集多路召回模式中设置 Rerank 模型</p></figcaption></figure>

View File

@ -2,7 +2,7 @@
当用户构建知识库问答类的 AI 应用时如果在应用内关联了多个数据集Dify 在检索时支持两种召回模式N选1召回模式和多路召回模式。
<figure><img src="../../.gitbook/assets/image (125).png" alt=""><figcaption><p>召回模式设置</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (125).png" alt=""><figcaption><p>召回模式设置</p></figcaption></figure>
### N选1召回模式
@ -12,7 +12,7 @@
以下是 N 选 1 召回模式的技术流程图:
<figure><img src="../../.gitbook/assets/image (126).png" alt=""><figcaption><p>N 选 1 召回</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (126).png" alt=""><figcaption><p>N 选 1 召回</p></figcaption></figure>
因此,在查询数据集过多,或者数据集描述差异较小时,该模式的保证召回的效果会受到影响。该模式更适用于数据集数量较少的应用。
@ -27,7 +27,7 @@
以下是多路召回模式的技术流程图:
<figure><img src="../../.gitbook/assets/image (2) (1).png" alt=""><figcaption><p>多路召回</p></figcaption></figure>
<figure><img src="../../../.gitbook/assets/image (2) (1).png" alt=""><figcaption><p>多路召回</p></figcaption></figure>
由于多路召回模式不依赖于模型的推理能力或数据集描述,该模式在多数据集检索时能够获得质量更高的召回效果,除此之外加入 Rerank 步骤也能有效改进文档召回效果。因此,当创建的知识库问答应用关联了多个数据集时,我们更推荐将召回模式配置为多路召回。\
\

View File

@ -105,7 +105,7 @@ FileNotFoundError: File not found
`CONSOLE_API_URL:` 控制台 API 的后端 URL。 `CONSOLE_WEB_URL:` 控制台网页的前端 URL。 `SERVICE_API_URL:` 服务 API 的 URL。 `APP_API_URL:` WebApp API 的后端 URL。 `APP_WEB_URL:` WebApp 的 URL。
更多信息,请查看:[环境变量](../install-self-hosted/environments.md)
更多信息,请查看:[环境变量](../../getting-started/install-self-hosted/environments.md)
### 5. 部署后如何升级版本?
@ -113,11 +113,11 @@ FileNotFoundError: File not found
源码部署更新时,需要进入 api 目录下,执行以下命令将数据库结构迁移至最新版本:
`flask db upgrade`&#x20;
`flask db upgrade`
### 6. 使用 Notion 导入时如何配置环境变量?
&#x20;[**Notion 的集成配置地址**](https://www.notion.so/my-integrations)**。**进行私有化部署时,请设置以下配置:
[**Notion 的集成配置地址**](https://www.notion.so/my-integrations)\*\*。\*\*进行私有化部署时,请设置以下配置:
1. **`NOTION_INTEGRATION_TYPE`** :该值应配置为(**public/internal**)。由于 Notion 的 Oauth 重定向地址仅支持 https如果在本地部署请使用 Notion 的内部集成。
2. **`NOTION_CLIENT_SECRET`** Notion OAuth 客户端密钥(用于公共集成类型)。

View File

@ -0,0 +1,2 @@
# 应用案例

View File

@ -34,13 +34,13 @@ Notion 是一个强大的知识管理工具。它的灵活性和可扩展性使
![login-1](https://pan.wsyfin.com/f/ERGcp/login-1.png)
#### 2.创建新的数据集 <a href="#2-create-a-new-datasets" id="2-create-a-new-datasets"></a>
#### 2.创建新的数据集 <a href="#2-create-a-new-datasets" id="2-create-a-new-datasets"></a>
点击顶部侧边栏的 "Knowledge" 按钮,然后点击 "Create Knowledge" 按钮。
![login-2](https://pan.wsyfin.com/f/G6ziA/login-2.png)
#### 3. 与 Notion 和您的数据集进行连接 <a href="#3-connect-with-notion-and-datasets" id="3-connect-with-notion-and-datasets"></a>
#### 3. 与 Notion 和您的数据集进行连接 <a href="#3-connect-with-notion-and-datasets" id="3-connect-with-notion-and-datasets"></a>
选择 "Sync from Notion",然后点击 "Connect" 按钮。
@ -58,7 +58,7 @@ Notion 是一个强大的知识管理工具。它的灵活性和可扩展性使
![connect-with-notion-4](https://pan.wsyfin.com/f/M8Xtz/connect-with-notion-4.png)
#### 4. 开始训练 <a href="#4-start-training" id="4-start-training"></a>
#### 4. 开始训练 <a href="#4-start-training" id="4-start-training"></a>
指定需要让 AI 学习的页面,使其能够理解 Notion 中这个部分的内容。然后点击 "下一步" 按钮。
@ -88,15 +88,15 @@ Notion 是一个强大的知识管理工具。它的灵活性和可扩展性使
> 我希望你能在我的 Notion 工作区中扮演一个 IT 专家的角色利用你对计算机科学、网络基础设施、Notion 笔记和 IT 安全的知识来解决问题。
<figure><img src="../.gitbook/assets/image (34).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (34).png" alt=""><figcaption></figcaption></figure>
建议初始时启用 AI 主动提供用户一个起始句子,给出可以询问的线索。此外,激活「语音转文字」功能可以让用户通过语音与你的 AI 助手进行互动。
<figure><img src="../.gitbook/assets/image (42).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (42).png" alt=""><figcaption></figcaption></figure>
现在您可以在“概览”中单击公共 URL 聊天与您自己的 AI 助手!
<figure><img src="../.gitbook/assets/image (27).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (27).png" alt=""><figcaption></figcaption></figure>
### 通过API集成到您的项目中
@ -124,9 +124,9 @@ Notion 是一个强大的知识管理工具。它的灵活性和可扩展性使
您可以在API文档上运行示例请求代码来调用终端中的AI应用程序。
记住替换代码中的SECRET KEY和conversation_id。
记住替换代码中的SECRET KEY和conversation\_id。
您可以在第一次输入空的conversation_id在收到包含conversation_id的响应后将其替换。
您可以在第一次输入空的conversation\_id在收到包含conversation\_id的响应后将其替换。
```
curl --location --request POST 'https://api.dify.ai/v1/chat-messages' \

View File

@ -1,58 +1,57 @@
# 教你十几分钟不用代码创建 Midjoureny 提示词机器人
# 教你十几分钟不用代码创建 Midjourney 提示词机器人
_作者歸藏的 AI 工具箱_
试用了一下前几天我周刊里推荐的自然语言编程工具 Dify它是 @goocarlos 开发的能够让一个不会代码的人只通过编写提示词生成一个 Web 应用,甚至连 API 也生成好了,你可以接入以后部署到你希望部署的平台上去。
下面这个应用就是我花 20 分钟写的,效果非常好,如果没有 Dify 我可能需要搞好久才能搞定。具体的功能就是根据输入的简短的主题生成 Midjourney 的提示词,也能帮助你快速填写常见的 Midjourney 命令。下面我会写一下这个应用的创建过程帮大家熟悉一下这个平台。
Dify 可以选择两种应用一种是对话型应用类似于 ChatGPT 那种,另一种是文本生成类应用没有多轮对话的机制点击按钮直接生成文本内容。我们要创建的 Midjoureny 提示词机器人,所以我们选择文本生成应用就行。
你可以在这里访问 Difyhttps://dify.ai/
<figure><img src="../.gitbook/assets/image (99).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (99).png" alt=""><figcaption></figcaption></figure>
我们输入名称创建完成之后看到的页面就是我们的看板页面里面有一些数据监控和应用设置。我们先点击左侧的提示词编排,这里就是主要的工作页面了。
<figure><img src="../.gitbook/assets/image-2.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-2.png" alt=""><figcaption></figcaption></figure>
这个页面左侧是提示词设置和一些其他功能,右侧可以实时预览和使用你创建的内容。前缀提示词就是用户每次输入内容后触发的提示词了,可以理解为每次 GPT 都会按照你的前缀提示词内容去处理用户输入的信息。
<figure><img src="../.gitbook/assets/image-3.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-3.png" alt=""><figcaption></figcaption></figure>
可以看一下我的前缀提示词结构,主要有两部分前面是中文写的让 GPT 按照下面英文的结构输出照片的描述。英文的结构就是生成提示词的模板了,主要意思是【主题彩色照片,错综复杂的图案,鲜明的对比,环境描述,相机型号,与输入内容相关的镜头焦距描述,与输入内容相关的构图描述,四位摄影师的名字】这个就是提示词的主要内容了。理论上你现在保存到右边预览区域输入你想生成的主题就能生成对应提示词了。
<figure><img src="../.gitbook/assets/image-4.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-4.png" alt=""><figcaption></figcaption></figure>
那可能有人注意到了后面的 \{{proportion\}} 和 \{{version\}} 是什么呢,可以看到我右边需要用户选择图像比例和模型版本这两个变量就是用来传递用户选择的信息的。我们看一下如何设置。
<figure><img src="../.gitbook/assets/image-5.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-5.png" alt=""><figcaption></figcaption></figure>
我们的功能是把用户选择的信息填到提示词的最后方便用户直接复制不用重新填写和记忆这些命令,这里就要用到下面的变量功能。
变量的作用就是把用户表单填写或者选择的内容动态的带入到提示词里面。比如我这里创建了两个变量一个代表图像比例一个代表模型版本。点击添加按钮创建变量。
<figure><img src="../.gitbook/assets/image-6.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-6.png" alt=""><figcaption></figcaption></figure>
创建之后首先需要填写前面的变量 Key 和字段名称,变量 Key 需要英文。后面的可选开启之后这个字段就会是选填的。之后我们需要点击操作栏的设置来设置变量内容。
<figure><img src="../.gitbook/assets/image-7.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-7.png" alt=""><figcaption></figcaption></figure>
变量包括两种内容一种是文本变量一种是下拉选项,文本的就是用户需要手动输入,下拉的话就是选择了。这里我们主要是不想用户手打命令,所以我们选择下拉选项。增加需要的选项就行。
<figure><img src="../.gitbook/assets/image-8.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-8.png" alt=""><figcaption></figcaption></figure>
之后就是使用变量了,我们需要把变量 Key 用两个 {} 包起来填写到前缀提示词里。这里由于我们不想让 GPT 改用户选择的内容,我加了一句提示词“如实输出变量内容”。
<figure><img src="../.gitbook/assets/image-9.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-9.png" alt=""><figcaption></figcaption></figure>
加了上面那句话 GPT 还是有一定几率改掉我们的变量内容怎么办,我们可以在右侧模型选择这里把多样性调低,这样创造性输出就会降低,他就不容易改写我们的变量内容了。其他的几个参数的意思可看小叹号了解。
<figure><img src="../.gitbook/assets/image-11.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-11.png" alt=""><figcaption></figcaption></figure>
好了到这里我们的应用就创建完成了,测试输出没问题以后点击右上角的发布按钮,你的应用就发布了。你你和用户可以通过公开访问 URL 的地址访问你的应用。可以在设置里设置应用名称以及简介、图标之类的内容。
<figure><img src="../.gitbook/assets/image-13.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-13.png" alt=""><figcaption></figcaption></figure>
这就是利用 Dify 创建一个简单 AI 应用的流程,你还可以通过生成的 API 把你的应用部署在其他平台或者更改它的 UI。同时 Dify 还支持上传你自己的数据,比如你可以建一个客服机器人帮助你回答自己产品的相关问题。教程到这里就结束了,感谢 @goocarlos 创建了这么好的产品。

View File

@ -6,7 +6,7 @@
Dify 是一个开源且非常简单易用的 LLMOps 平台,让你能够可视化快速创建并运营 AI 应用的工具平台。Dify 提供了可视化的 Prompt 编排、运营、数据集管理等功能。你甚至无需具备 AI 相关的技术研究和晦涩概念的理解。Dify 对接了各个出色的大型语言模型供应商,如 OpenAI、Azure OpenAI、Antropic 等,已提供 GPT 系列、Claude 系列模型,未来也将接入优秀的开源模型。这一切都是可以在设置中切换使用。这意味着,你在创建调试应用时,可以对比不同模型的效果,以确定使用最适合你的模型。**基于 Dify你不仅可以很轻易地开发一个 AI 智能客服,还可以创造符合你使用习惯和需求的文本写作助手、虚拟招聘 HR 专家、会议总结助手、翻译助手等各种文本生成型应用,为你的工作提效。**
<figure><img src="../.gitbook/assets/image (53).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (53).png" alt=""><figcaption></figcaption></figure>
**前提条件**
@ -22,17 +22,17 @@ AI 模型的消息调用需要消耗 tokenDify 提供了 OpenAI GPT 系列(
如果你希望能基于公司现有的知识库和产品文档构建人工智能客服,来与用户交流,那么你需要尽可能将你产品有关的文档上传到 Dify 的数据集中。Dify 帮助你完成数据的**分段处理和清洗**。Dify数据集支持高质量和经济两种索引模式我们推荐使用高质量模式会消耗 token 但能提供更高的准确性。操作步骤:在 【数据集】页面,新建一个数据集,上传你的业务数据(支持批量上传多个文本),选择清洗方式,【保存并处理】,只需几秒钟即可完成处理。
<figure><img src="../.gitbook/assets/image (25).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (25).png" alt=""><figcaption></figcaption></figure>
**创建一个 AI 应用,给 AI 指令**
在【构建应用】页面创建一个对话型应用。然后开始设置 AI 指令和它在前端和用户交互的体验:
1. **给 AI 指令:**点击左侧【提示词编排】编辑你的 Prompt ,让它扮演客服的角色与用户交流,你可以指定它和用户交流的语气、风格、限定它回答问题的范围;
2. **让 AI 拥有你的业务知识:**在【上下文】中添加你刚才上传的目标数据集;
3. **设置一个【对话开场白】:**点击 【添加功能】打开功能开关。目的是为 AI 应用添加一个开场白,在用户打开客服窗口时,它会先和用户打招呼,增加亲和感。
4. **设置【下一步问题建议】:**在【添加功能】开启此功能。目的是为了让用户在提完一个问题后,给用户进行下一步提问的方向提示。
5. **选择一个合适的模型并调整参数:**页面右上角可以选择不同的模型。不同模型的表现和消耗的 token 价格都不一样。这个例子中,我们使用 GPT3.5 模型。
1. \*\*给 AI 指令:\*\*点击左侧【提示词编排】编辑你的 Prompt ,让它扮演客服的角色与用户交流,你可以指定它和用户交流的语气、风格、限定它回答问题的范围;
2. \*\*让 AI 拥有你的业务知识:\*\*在【上下文】中添加你刚才上传的目标数据集;
3. \*\*设置一个【对话开场白】:\*\*点击 【添加功能】打开功能开关。目的是为 AI 应用添加一个开场白,在用户打开客服窗口时,它会先和用户打招呼,增加亲和感。
4. \*\*设置【下一步问题建议】:\*\*在【添加功能】开启此功能。目的是为了让用户在提完一个问题后,给用户进行下一步提问的方向提示。
5. \*\*选择一个合适的模型并调整参数:\*\*页面右上角可以选择不同的模型。不同模型的表现和消耗的 token 价格都不一样。这个例子中,我们使用 GPT3.5 模型。
在这个 case 中,我们给 AI 指定了扮演的角色:
@ -40,29 +40,28 @@ AI 模型的消息调用需要消耗 tokenDify 提供了 OpenAI GPT 系列(
> 开场白:你好,我是 Bob☀, Dify的第一位AI成员。您可以与我讨论任何与Dify产品、团队甚至LLMOps相关的问题。
<figure><img src="../.gitbook/assets/image (92).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (92).png" alt=""><figcaption></figcaption></figure>
**调试 AI 智能客服的表现并发布**
完成以上的设置后,你可以在当前的页面右侧给它发送信息调试它的表现是否符合预期。然后点击【发布】。这时候你就已经拥有了一个 AI 智能客服。
<figure><img src="../.gitbook/assets/image (87).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (87).png" alt=""><figcaption></figcaption></figure>
**将 AI 客服应用嵌入到你的前端页面**
这一步,是将准备好的 AI 智能客服嵌入到你的官网页面。依次点击【概览】->【嵌入】,选择 **script 标签方式,**将 script 代码复制到你网站 `<head>``<body>` 标签中。如你是非技术人员,可让负责官网的开发帮忙粘贴并更新页面。
这一步,是将准备好的 AI 智能客服嵌入到你的官网页面。依次点击【概览】->【嵌入】,选择 \*\*script 标签方式,\*\*将 script 代码复制到你网站 `<head>``<body>` 标签中。如你是非技术人员,可让负责官网的开发帮忙粘贴并更新页面。
<figure><img src="../.gitbook/assets/image (59).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (59).png" alt=""><figcaption></figcaption></figure>
1. 将复制的代码粘贴到你官网的目标位置:
<figure><img src="../.gitbook/assets/image (93).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (93).png" alt=""><figcaption></figcaption></figure>
1. 更新你的官网,即可以得到一个拥有你业务数据的官网 AI智能客服。试一试效果
<figure><img src="../.gitbook/assets/image (100).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (100).png" alt=""><figcaption></figcaption></figure>
以上通过 Dify 官网 AI 客服 Bob 的例子演示了如何将 Dify 应用嵌入到官网的具体操作步骤。当然,你还可以通过 Dify 提供的更多特性来增加 AI 客服的表现,例如增加一些变量设置,让用户在互动前填入必要的判断信息,如名字、使用的具体产品等等。
欢迎你一起来探索,定制企业的 AI 智能客服。
以上通过 Dify 官网 AI 客服 Bob 的例子演示了如何将 Dify 应用嵌入到官网的具体操作步骤。当然,你还可以通过 Dify 提供的更多特性来增加 AI 客服的表现,例如增加一些变量设置,让用户在互动前填入必要的判断信息,如名字、使用的具体产品等等。 欢迎你一起来探索,定制企业的 AI 智能客服。
<figure><img src="../.gitbook/assets/image (85).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (85).png" alt=""><figcaption></figcaption></figure>

View File

@ -4,8 +4,6 @@ _作者小聚乙烯人_
Dify 允许创建 AI 应用,并提供二次开发的能力。这里我将演示创建一个法律问答助手的 AI 应用,称作“知法”。在本篇教程中,我将指导你为“知法”接入企业微信。
## 前置准备
* 企业微信的管理员权限
@ -33,19 +31,17 @@ DIFY_APPTOKEN=""
为了让“知法”了解到更多的上下文,我们需要创建一个法律知识的数据库。
* \*\*导入文档:\*\*从电脑上导入法律知识的 PDF 文档。
* **导入文档:**从电脑上导入法律知识的 PDF 文档。
<figure><img src="../.gitbook/assets/image-14.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-14.png" alt=""><figcaption></figcaption></figure>
* **文本分段和清洗**:上传的文本需要经过二次加工,才能被大语言模型理解。这里我们不需要关注具体的实现逻辑,直接选择自动分段即可,然后点击“保存并处理”。
<figure><img src="../.gitbook/assets/image-15.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-15.png" alt=""><figcaption></figcaption></figure>
* **文本嵌入:**大约 30s 时间,数据集就创建成功了。你可以随时回来向数据库里添加更多文件。
* \*\*文本嵌入:\*\*大约 30s 时间,数据集就创建成功了。你可以随时回来向数据库里添加更多文件。
<figure><img src="../.gitbook/assets/image-16.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-16.png" alt=""><figcaption></figcaption></figure>
<figure><img src="https://y5cyd1csei.feishu.cn/space/api/box/stream/download/asynccode/?code=ZGRiNTRkMzk1NjA1NGQ0ZTAxYjFhOWI1NjE0YjFjZmFfYnZES1g2cDJ4WmxyVlNyQVRKeFpURnh1TFowTzN5eXhfVG9rZW46RThwb2JIRkwybzVxcFd4YXVLYWNyTm9NbmZmXzE2ODQ5Mzg0MDE6MTY4NDk0MjAwMV9WNA" alt=""><figcaption></figcaption></figure>
@ -53,100 +49,99 @@ DIFY_APPTOKEN=""
> 随时查看文档中关于创建应用的更多操作 [【创建应用】](https://docs.dify.ai/v/zh-hans/application/creating-an-application)
* **创建应用:**根据图中的指示,创建一个对话型应用,并命名为“知法”。
* \*\*创建应用:\*\*根据图中的指示,创建一个对话型应用,并命名为“知法”。
<figure><img src="../.gitbook/assets/image-17.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-17.png" alt=""><figcaption></figcaption></figure>
* **关联数据集:**在“提示词编排”页,在“上下文”模块中添加选择刚刚创建的数据集。
* \*\*关联数据集:\*\*在“提示词编排”页,在“上下文”模块中添加选择刚刚创建的数据集。
<figure><img src="../.gitbook/assets/image-18.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-18.png" alt=""><figcaption></figcaption></figure>
* **发布模型:**完成关联数据集后,点击页面右上角的“发布”,使模型生效。
* \*\*发布模型:\*\*完成关联数据集后,点击页面右上角的“发布”,使模型生效。
<figure><img src="../.gitbook/assets/image-19.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image-19.png" alt=""><figcaption></figcaption></figure>
* **获取 API 访问密钥。**在“访问 API”页面创建一个 API 密钥并复制保存为`DIFY_APPTOKEN`。请注意不要把密钥泄漏给任何人,以免造成财产损失。
* \*\*获取 API 访问密钥。\*\*在“访问 API”页面创建一个 API 密钥并复制保存为`DIFY_APPTOKEN`。请注意不要把密钥泄漏给任何人,以免造成财产损失。
<figure><img src="../.gitbook/assets/image (84).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (84).png" alt=""><figcaption></figcaption></figure>
## 创建企业微信应用
* **记录企业信息:**进入企业微信管理后台-我的企业,记录这里的企业 ID 为 `WXWORK_CORPID`
* \*\*记录企业信息:\*\*进入企业微信管理后台-我的企业,记录这里的企业 ID 为 `WXWORK_CORPID`
<figure><img src="../.gitbook/assets/image (37).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (37).png" alt=""><figcaption></figcaption></figure>
* **创建企业微信应用:**进入应用管理页面,点击【创建应用】进入创建页面,填写应用信息后点击【创建应用】。如果已经有现成的应用,可以跳过此步骤。
* \*\*创建企业微信应用:\*\*进入应用管理页面,点击【创建应用】进入创建页面,填写应用信息后点击【创建应用】。如果已经有现成的应用,可以跳过此步骤。
<figure><img src="../.gitbook/assets/image (23).png" alt="" width="375"><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (23).png" alt="" width="375"><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/image (107).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (107).png" alt=""><figcaption></figcaption></figure>
* **记录企业微信应用信息:**在应用管理页面点击刚刚创建好的应用,进入应用详情页面。记录这里的 AgentId 和 Secret需要点击获取按钮在企业微信聊天窗口里面获取分别为WXWORK_AGENTID和WXWORK_CORPSECRET。
* \*\*记录企业微信应用信息:\*\*在应用管理页面点击刚刚创建好的应用,进入应用详情页面。记录这里的 AgentId 和 Secret需要点击获取按钮在企业微信聊天窗口里面获取分别为WXWORK\_AGENTID和WXWORK\_CORPSECRET。
<figure><img src="../.gitbook/assets/image (101).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (101).png" alt=""><figcaption></figcaption></figure>
* **企业微信应用接收信息:**在应用详情页面,接收消息处点击【设置 API 接收】。
* \*\*企业微信应用接收信息:\*\*在应用详情页面,接收消息处点击【设置 API 接收】。
<figure><img src="../.gitbook/assets/image (95).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (95).png" alt=""><figcaption></figcaption></figure>
在 API 接收消息页面,点一下两个【随机获取】按钮,它会自动生成一个 Token 和 EncodingAESKey我们分别记为 WXWORK_TOKEN 和 WXWORK_AESKEY。注意不要关掉这个页面Laf 侧配置完毕后我们再来填写 URL。
在 API 接收消息页面,点一下两个【随机获取】按钮,它会自动生成一个 Token 和 EncodingAESKey我们分别记为 WXWORK\_TOKEN 和 WXWORK\_AESKEY。注意不要关掉这个页面Laf 侧配置完毕后我们再来填写 URL。
<figure><img src="../.gitbook/assets/image (96).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (96).png" alt=""><figcaption></figcaption></figure>
## 在 Laf 云上创建云函数
* **新建 Laf 云应用:**进入 Laf 后,点击新建,创建一个云应用。这里选择免费的计划即可。
* \*\*新建 Laf 云应用:\*\*进入 Laf 后,点击新建,创建一个云应用。这里选择免费的计划即可。
<figure><img src="../.gitbook/assets/image (38).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (38).png" alt=""><figcaption></figcaption></figure>
* **添加依赖:**企业微信应用需要添加`@wecom/crypto`, `xml2js` 两个依赖。添加好后,你的依赖列表应该像下面一样。
* \*\*添加依赖:\*\*企业微信应用需要添加`@wecom/crypto`, `xml2js` 两个依赖。添加好后,你的依赖列表应该像下面一样。
<figure><img src="../.gitbook/assets/image (62).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (62).png" alt=""><figcaption></figcaption></figure>
* **添加环境变量:**从第二行开始,将上面步骤中收集到的所有内容全部粘贴到这里,点击更新。
* \*\*添加环境变量:\*\*从第二行开始,将上面步骤中收集到的所有内容全部粘贴到这里,点击更新。
<figure><img src="../.gitbook/assets/image (32).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (32).png" alt=""><figcaption></figcaption></figure>
* **创建云函数:**点击创建一个云函数,注意“请求方法”中勾选上`POST`, `GET`,点击确定。
* \*\*创建云函数:\*\*点击创建一个云函数,注意“请求方法”中勾选上`POST`, `GET`,点击确定。
<figure><img src="../.gitbook/assets/image (61).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (61).png" alt=""><figcaption></figcaption></figure>
在创建好云函数中,删除默认的代码,并将文末**“附录”**中的代码全部粘贴到这里。
在创建好云函数中,删除默认的代码,并将文末\*\*“附录”\*\*中的代码全部粘贴到这里。
<figure><img src="../.gitbook/assets/image (56).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (56).png" alt=""><figcaption></figcaption></figure>
* **发布云函数:**点击发布后,云函数就生效了。
* \*\*发布云函数:\*\*点击发布后,云函数就生效了。
<figure><img src="../.gitbook/assets/image (30).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (30).png" alt=""><figcaption></figcaption></figure>
现在把 URL 粘贴到企业微信后台【设置 API 接收】的页面中刚刚留白的地方,然后点击保存。
<figure><img src="../.gitbook/assets/image (41).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (41).png" alt=""><figcaption></figcaption></figure>
* **配置 IP 白名单:**在企业微信中找到刚刚创建应用,发送一句消息。不出意外收不到任何消息。这是因为企业微信默认屏蔽了 Laf 云的 IP。
* \*\*配置 IP 白名单:\*\*在企业微信中找到刚刚创建应用,发送一句消息。不出意外收不到任何消息。这是因为企业微信默认屏蔽了 Laf 云的 IP。
点击日志,应当能看到这样一条报错 '`not allow to access from your ip`'
<figure><img src="../.gitbook/assets/image (106).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (106).png" alt=""><figcaption></figcaption></figure>
点击查看这条日志详情,记录日志中给出的 Laf 云 IP。
<figure><img src="../.gitbook/assets/image (64).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (64).png" alt=""><figcaption></figcaption></figure>
回到企业微信的管理后台,点击刚刚创建的应用,为应用配置可行 IP。
<figure><img src="../.gitbook/assets/image (98).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (98).png" alt=""><figcaption></figcaption></figure>
在这里把刚刚的日志中记录的 IP 填入即可。
<figure><img src="../.gitbook/assets/image (86).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (86).png" alt=""><figcaption></figcaption></figure>
## 验证效果
1. **测试聊天:**在企业微信中找到刚刚创建应用,发送一句消息。现在应当能收到推送的消息了。
1. \*\*测试聊天:\*\*在企业微信中找到刚刚创建应用,发送一句消息。现在应当能收到推送的消息了。
<figure><img src="../.gitbook/assets/image (44).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (44).png" alt=""><figcaption></figcaption></figure>
## 引用

View File

@ -30,11 +30,11 @@ conda activate python-3-11
推荐直接从[官网](https://developer.nvidia.com/cuda-downloads?target\_os=Windows\&target\_arch=x86\_64\&target\_version=11\&target\_type=exe\_local)安装。 Windows 11 选择下图版本。
<figure><img src="../.gitbook/assets/a.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/a.png" alt=""><figcaption></figcaption></figure>
根据引导安装完,打开 `NVDIA 控制面板 -> 系统信息` 看到完成了安装。
<figure><img src="../.gitbook/assets/b2.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/b2.png" alt=""><figcaption></figcaption></figure>
**WSL2 准备**
@ -48,7 +48,7 @@ conda activate python-3-11
2. Input CMD
3. Ctrl + Shift + Enter
<figure><img src="../.gitbook/assets/image (21).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (21).png" alt=""><figcaption></figcaption></figure>
**第二步,在** **CMD** **中用指令安装**
@ -196,7 +196,7 @@ alias proxy="source /path/to/proxy.sh"
进入官网,选择 WSL-Ubuntu 版本,按照指引使用命令行安装。 &#x20;
<figure><img src="../.gitbook/assets/image (45).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (45).png" alt=""><figcaption></figcaption></figure>
修改`~/.bashrc`将 CUDA 添加至环境变量:
@ -211,7 +211,7 @@ export PATH=$PATH:/usr/local/cuda-12.2/lib64
进入 PyTorch [官网](https://pytorch.org/),按照环境安装 PyTorch。
<figure><img src="../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (48).png" alt=""><figcaption></figcaption></figure>
这样环境准备就完成了。
@ -255,7 +255,7 @@ Xinference 默认会在本地启动一个 worker端点为`http://127.0.0.1
在浏览器中打开: [http://localhost:9997](http://localhost:9997),选择 baichuan-chatpytorch13B4bit点击 create 部署。
<figure><img src="../.gitbook/assets/image (49).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (49).png" alt=""><figcaption></figcaption></figure>
或者使用 CLI 部署:
@ -340,7 +340,7 @@ docker-worker-1 langgenius/dify-api:0.3.16 "/bin/bash /entrypoi…"
Docker 启动成功后在浏览器中访问http://127.0.0.1/。设置过密码后登陆,会进入应用列表页。
<figure><img src="../.gitbook/assets/image (72).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (72).png" alt=""><figcaption></figcaption></figure>
至此,成功使用 Docker 部署了 Dify 社区版。
@ -363,13 +363,13 @@ hostname -I
172.22.195.4
```
<figure><img src="../.gitbook/assets/image (55).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (55).png" alt=""><figcaption></figcaption></figure>
#### 使用 Baichuan-13B-Chat&#x20;
创建应用,就可以在应用中使用上一步配置的 Baichuan-13B-Chat 模型了。在 Dify 的提示词编排界面,选择 baichuan-chat 模型设计你的应用提示词prompt即可发布一个可访问的 AI 应用。
<figure><img src="../.gitbook/assets/image (66).png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/image (66).png" alt=""><figcaption></figcaption></figure>
以上,就是本地部署 Dify 接入 Xinference 部署的 baichuan-chat 的全过程。 至此,我们基于 Baichuan-13B-Chat 的一个基本的聊天应用就基本完成了。

View File

@ -2,8 +2,6 @@
_作者阿乔_
_火枪击穿了专属于骑士阶层身披的铠甲与荣耀武力对等才会有真正的平权。_
技术平权的速度从未来得如此之快。
@ -18,16 +16,14 @@ _注CODING DevOps 是腾讯云旗下的一站式研发管理平台及云原
例如这样 🔽
<figure><img src="../.gitbook/assets/640.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640.png" alt=""><figcaption></figcaption></figure>
这里的“胡言乱语”指的是它会用其他不相关的概念进行回答,并且**你并不能够预期什么问题会有什么回答,这在商业场景下十分致命。**在大多数情况下ChatGPT 对于一些带有**公理性质**的知识回答是没有问题的,作为一个可以日常侃大山闲聊的对象依然是合格的,可是你却看着它的强大的学习和理解能力望洋兴叹。
这里的“胡言乱语”指的是它会用其他不相关的概念进行回答,并且**你并不能够预期什么问题会有什么回答这在商业场景下十分致命。在大多数情况下ChatGPT 对于一些带有公理性质**的知识回答是没有问题的,作为一个可以日常侃大山闲聊的对象依然是合格的,可是你却看着它的强大的学习和理解能力望洋兴叹。
**“你这个孙悟空什么时候才能懂我,给我想要的回答?”**
这也是为什么说它能够回应大家的问题,但是却不能够回答出“我”想要的问题。
### **改变发生**
直到Dify 横空出世。
@ -40,15 +36,15 @@ _注CODING DevOps 是腾讯云旗下的一站式研发管理平台及云原
现在,我们打开 Dify 并注册一个聊天机器人,我们在这里选择“对话型应用”。
<figure><img src="../.gitbook/assets/640-2.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-2.png" alt=""><figcaption></figcaption></figure>
Duang一个聊天机器人就做好了。
<figure><img src="../.gitbook/assets/640-3.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-3.png" alt=""><figcaption></figcaption></figure>
访问这个链接就可以看到一个聊天机器人了。但是,它现在也只是一个**通用型聊天机器人**,离商业可用的**专用型问答机器人**还差一个语料的距离。
<figure><img src="../.gitbook/assets/640-4.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-4.png" alt=""><figcaption></figcaption></figure>
###
@ -56,11 +52,11 @@ Duang一个聊天机器人就做好了。
Dify 提供了一个名叫“数据集”的功能,这里就是我们上传语料的地方。
<figure><img src="../.gitbook/assets/640-5.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-5.png" alt=""><figcaption></figcaption></figure>
现在点击“创建数据集”选项,上传你的文本内容。
<figure><img src="../.gitbook/assets/640-6.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-6.png" alt=""><figcaption></figcaption></figure>
目前 Dify 仅支持上传单个文件,文件格式支持 TXT、HTML、MarkDown、PDF。
@ -68,15 +64,15 @@ _是的没错你也可以把电子书上传进来用 AI 帮助你提炼书
在正式开始训练前,我们得先把教材准备好。好在 CODING 之前的所有文档皆以 Git 代码仓库 + Markdown 的形式进行协作,因此我只需要先把文档先拉到本地中。不过我现在碰到了第一个问题,那就是如何把仓库中的这一系列 .md 文档文件合并至同一个文件中?
<figure><img src="../.gitbook/assets/640-7.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-7.png" alt=""><figcaption></figcaption></figure>
不怕,让 AI 给我们写一段 python 吧。
<figure><img src="../.gitbook/assets/640-8.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-8.png" alt=""><figcaption></figcaption></figure>
试着运行这个脚本oh输入路径后就成功生成了一篇总合文档如果你想了解如何让 AI 给你写代码,不妨阅读[《如何用狗屁通GPT )解决一个套娃问题》](http://mp.weixin.qq.com/s?__biz=MzU2Njg1NDA3Mw==\&mid=2247484248\&idx=1\&sn=50809b40f520c767483e1a7b0eefb9c1\&chksm=fca76b8ecbd0e298e627140d63e7b3383d226ab293a2e8fefa04b5a1ee12f187520560ec1579\&scene=21#wechat_redirect)。
试着运行这个脚本oh输入路径后就成功生成了一篇总合文档如果你想了解如何让 AI 给你写代码,不妨阅读[《如何用狗屁通GPT )解决一个套娃问题》](http://mp.weixin.qq.com/s?\_\_biz=MzU2Njg1NDA3Mw==\&mid=2247484248\&idx=1\&sn=50809b40f520c767483e1a7b0eefb9c1\&chksm=fca76b8ecbd0e298e627140d63e7b3383d226ab293a2e8fefa04b5a1ee12f187520560ec1579\&scene=21#wechat\_redirect)。
<figure><img src="../.gitbook/assets/640-9.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-9.png" alt=""><figcaption></figcaption></figure>
###
@ -84,11 +80,11 @@ _是的没错你也可以把电子书上传进来用 AI 帮助你提炼书
现在要做的事,就是上传这个文件并静待训练成果了。
<figure><img src="../.gitbook/assets/640.jpg" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640.jpg" alt=""><figcaption></figcaption></figure>
数据自动分段与清洗完成后,在刚创建的应用设置中的上下文,关联这一篇文档。为了保证响应速度和成本控制,这里直接用 3.5 模型。
<figure><img src="../.gitbook/assets/640-1.jpg" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-1.jpg" alt=""><figcaption></figcaption></figure>
###
@ -96,17 +92,17 @@ _是的没错你也可以把电子书上传进来用 AI 帮助你提炼书
现在再去和这个机器人互动,看看它会回答什么?
<figure><img src="../.gitbook/assets/640-10.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-10.png" alt=""><figcaption></figcaption></figure>
好了,你已经是个成熟的问答机器人了,可以回答更加复杂的产品问题了。
<figure><img src="../.gitbook/assets/640-11.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-11.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/640-12.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-12.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/640-13.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-13.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../.gitbook/assets/640-14.png" alt=""><figcaption></figcaption></figure>
<figure><img src="../../.gitbook/assets/640-14.png" alt=""><figcaption></figcaption></figure>
这个问答机器人花了多久做出来,成本如何?