Dify接入Geek-AI步骤

准备工作

1、Geek Ai使用版本:V4.1.2

2、Dify使用版本:V0.12.1

过程分析

  1. 引入 Dify 模型支持:在 chat_handler.go 中增加对 Dify 模型的判断逻辑。

  2. 实现 Dify 消息发送逻辑:在 dify_handler.go 中实现 sendDifyMessage 方法,处理 Dify 的消息发送和响应处理。

  3. 实现 Dify 请求发送方法:在 dify_handler.go 中实现 doDifyRequest 方法,发送请求到 Dify 服务器。

  4. 处理 Dify 响应:在 dify_handler.go 中实现 processEvents 方法,处理 Dify 的事件流响应。

  5. 保存聊天历史:在 sendDifyMessage 方法中,调用 saveChatHistory 方法保存 Dify 的响应内容到聊天历史中。

代码实现

1. 引入 Dify 模型支持
  • 新增文件: 创建 dify_handler.go 文件,用于处理 Dify 模型的相关逻辑。

  • 修改 chat_handler.go: 在 sendMessage 方法中,增加对 Dify 模型的判断逻辑。如果 API Key 以 app- 开头,则调用 Dify 模型。

	keyId := session.Model.KeyId
	var apiKeyValue string
	h.DB.Model(&model.ApiKey{}).Where("id", keyId).Select("value").Scan(&apiKeyValue)
	if strings.HasPrefix(apiKeyValue, "app-") {
		return h.sendDifyMessage(chatCtx, req, userVo, ctx, session, role, prompt, ws)

你可能感兴趣的:(AI大模型,GeekAI,Dify,AI大模型)