Files
aiagent/OpenAI集成说明.md
2026-01-19 00:09:36 +08:00

4.1 KiB
Raw Blame History

OpenAI集成说明

已完成

已成功集成OpenAI APILLM节点现在可以真实调用OpenAI模型。

功能特性

1. LLM服务 (backend/app/services/llm_service.py)

  • 支持OpenAI API调用
  • 支持自定义模型、温度、最大token数等参数
  • 异步调用,提高性能
  • 错误处理和异常捕获

2. 工作流引擎集成

  • LLM节点现在会真实调用OpenAI API
  • 支持prompt模板和变量替换
  • 自动处理输入数据格式化

配置方法

1. 设置OpenAI API Key

backend/.env 文件中添加:

OPENAI_API_KEY=your-openai-api-key-here
OPENAI_BASE_URL=https://api.openai.com/v1

或者使用环境变量:

export OPENAI_API_KEY=your-openai-api-key-here
export OPENAI_BASE_URL=https://api.openai.com/v1

2. 重启后端服务

docker-compose -f docker-compose.dev.yml restart backend

使用方法

1. 在工作流中添加LLM节点

  1. 打开工作流设计器
  2. 从节点工具箱拖拽"LLM"节点到画布
  3. 配置节点参数(见下方)

2. 配置LLM节点

LLM节点支持以下配置在节点配置面板中设置

{
  "prompt": "请处理以下输入:\n{input}",
  "provider": "openai",
  "model": "gpt-3.5-turbo",
  "temperature": 0.7,
  "max_tokens": 1000
}

参数说明

  • prompt: 提示词模板,支持变量替换(如 {input}, {key} 等)
  • provider: LLM提供商目前支持 openai
  • model: 模型名称,如 gpt-3.5-turbo, gpt-4, gpt-4-turbo-preview
  • temperature: 温度参数0-2控制输出的随机性默认0.7
  • max_tokens: 最大生成token数可选

3. Prompt模板示例

基础模板

请处理以下输入数据:{input}

带变量替换

用户输入:{user_input}
请根据以上输入生成回复。

复杂模板

输入数据:
{input}

请分析以上数据并给出:
1. 主要观点
2. 关键信息
3. 建议

4. 执行工作流

  1. 保存工作流
  2. 点击"运行"按钮
  3. 输入初始数据JSON格式
  4. 查看执行结果

输入数据处理

LLM节点会自动处理输入数据

  1. 如果输入是字典

    • 支持在prompt中使用 {key} 替换变量
    • 如果prompt中没有变量会将整个输入作为JSON附加到prompt
  2. 如果输入是字符串或其他类型

    • 直接替换 {input} 占位符
    • 如果没有占位符附加到prompt末尾

错误处理

如果OpenAI API调用失败节点会返回错误信息

{
  "output": null,
  "status": "failed",
  "error": "LLM调用失败: 具体错误信息"
}

常见错误:

  • API Key未配置OpenAI API Key未配置请在环境变量中设置OPENAI_API_KEY
  • API调用失败检查网络连接、API Key有效性、余额等
  • 模型不存在:检查模型名称是否正确

支持的模型

目前支持所有OpenAI Chat模型

  • gpt-3.5-turbo
  • gpt-4
  • gpt-4-turbo-preview
  • gpt-4-32k
  • 其他OpenAI兼容的模型如果使用自定义base_url

示例工作流

示例1简单文本处理

开始 → LLM节点 → 结束

LLM节点配置

{
  "prompt": "请将以下文本翻译成英文:{input}",
  "model": "gpt-3.5-turbo"
}

输入:

{
  "input": "你好,世界"
}

示例2数据分析

开始 → LLM节点 → 条件节点 → 输出

LLM节点配置

{
  "prompt": "分析以下数据:\n{input}\n\n请判断数据是否正常返回true或false",
  "model": "gpt-4",
  "temperature": 0.3
}

注意事项

  1. API费用:每次调用都会产生费用,请注意控制调用频率
  2. API限制注意OpenAI的速率限制和配额
  3. 网络连接确保服务器可以访问OpenAI API
  4. 错误处理:建议在工作流中添加错误处理节点

后续计划

  • 支持更多LLM提供商Anthropic Claude、本地模型等
  • 支持流式输出Streaming
  • 支持函数调用Function Calling
  • 支持多轮对话上下文
  • 添加模型选择UI组件

状态: 已完成 时间: 2024年