dify,fastgpt等开源智能体实践

智能体

Agent能力是Agent开发平台能够提供的Agent功能扩展,包括通过知识库实现检索增强、插件及API实现工具调用、工作流实现复杂任务执行、数据库实现信息读写等。通过这些功能的加持,Agent能够综合运用多种技能,完成各类任务。

一、智能体的接入(

1)先看看哪个智能体好用,chatbox不行,没有知识库;

2)cherry studio也不太好用,它的知识库建立一团糟,没法使用;

3)Fastgpt还行,但是配置操作复杂,而且干什么都要钱,没法熟悉实践操作;

4)Dify这个我还没怎么了解,但是大家说的也挺多,我准备用一下试试

5)openwebui,这个简单易用,说实话这个更适合做用户管理,我觉得不错,可以深入研究一下如何)

6)Dify是一个开发平台,支持构建智能体应用,允许用户集成工具和知识库,具备自主决策和执行任务的能力。

7)OpenWebUI主要是一个Web界面,用于与LLM交互,支持RAG和知识库,但更多是提供用户界面和集成工具,而不是自主决策。Cherry Studio则是管理工具,支持配置模型和知识库,但用户需要手动选择模型和知识库,缺乏自主决策和持续行动的能力。例如,Cherry Studio允许用户创建助手并关联知识库,但决策仍由用户触发,而非系统自主执行。

Dify 被归类为智能体平台,是因为它提供了复杂任务编排和自主执行的能力,支持用户通过可视化界面定义和管理AI 应用的工作流。而 OpenWebUI 和 Cherry Studio 更注重提供 用户友好的交互界面和便捷的模型管理功能,它们的核心功能并不包括智能体的自主任务执行能力。

Openwebui

虽然它不是智能体,但是功能类似,放在这里分别比较功能都是免费的,简单易用,而且基本功能都可以满足

docker run -d --network=host -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:v0.5.18

跟网络有关系,使用主机网络无法连接模型,不知道为什么

docker run -d -p 3000:8080 -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:v0.5.18

但是因为这里的网络特殊原因,没法使用外部在线大模型

试试代理

docker run -d -p 3000:8080 -v open-webui:/app/backend/data

--name open-webui --restart always

-e http_proxy="http://10.137.23.12:8080"

-e https_proxy="http://10.137.23.12:8080"

ghcr.io/open-webui/open-webui:v0.5.18

成功啦

终于实现了内部外部大模型的共同接入

Curl测试连通性命令

bash 复制代码
curl -X POST "https://api.siliconflow.cn/v1/chat/completions" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-effrrewrsnrswznnuavelpnbxwnbdsumpyaymmpziipzdhmh" \
  -d '{
    "model": "internlm/internlm2_5-7b-chat",
    "messages": [
      {"role": "user", "content": "你好,请测试连通性"}
    ],
    "temperature": 0.7
  }'

curl -v https://api.siliconflow.cn/v1/chat/completions

Fastgpt

它和one-api的关系

Fastgpt接入内部外部大模型

重要的是这两个配置,默认情况下one-api中的令牌可以访问所有的渠道,没有分组的情况下

  • OPENAI_BASE_URL=http://*****
  • CHAT_API_KEY=sk-*****

然后其他操作可以在前端配置,网上大多数都是说要在config.json中配置,其实可以直接在前端界面的模型配置中添加,这还更加方便一些

终于成功了,真的是会了不难,难了不会,现在搞清楚了发现也就这么几个步骤,但是在我没弄明白之前,死活都不知道该怎么做,它对我来说就像一个黑盒

只要在同一个分组了,那么令牌就是共用的,无需设置多个

相关推荐
我是苏苏1 分钟前
Web开发:C#通过ProcessStartInfo动态调用执行Python脚本
java·服务器·前端
JavaGuide5 分钟前
SpringBoot 官宣停止维护 3.2.x~3.4.x!
java·后端
peixiuhui23 分钟前
EdgeGateway 快速开始手册-表达式 Modbus 报文格式
人工智能·mqtt·边缘计算·iot·modbus tcp·iotgateway·modbus rtu
2501_9159184144 分钟前
只有 Flutter IPA 文件,通过多工具组合完成有效混淆与保护
android·flutter·ios·小程序·uni-app·iphone·webview
马克学长1 小时前
SSM校园图书借阅服务系统jd2z8(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·图书管理系统·ssm 框架·ssm 校园图书借阅系统
软件派1 小时前
高斯数据库使用心得——从性能优化到行业实践的深度解析
数据库·oracle
bing.shao1 小时前
golang 做AI任务执行
开发语言·人工智能·golang
tkevinjd1 小时前
动态代理
java
Knight_AL1 小时前
Spring 事务管理:为什么内部方法调用事务不生效以及如何解决
java·后端·spring
robotx1 小时前
AOSP 设置-提示音和振动 添加一个带有开关(Switch)的设置项
android