Skip to content

arnoli777/ai_demo

Repository files navigation

说明

这是使用AI生成的100%代码的仓库,内容主要包括大模型常见概念以及简单damo

大模型基本应用Demo

本项目包含多个大模型应用的基本示例,每个示例都在独立的目录中。所有示例都遵循最佳实践,包含完整的文档和错误处理。

项目结构

ai_demo/
├── 01_basic_prompt/          # 基本prompt请求大模型例子
├── 02_agent_example/         # Agent例子,包含多个agent_tool
├── 03_function_call/         # Function call例子
├── 04_mcp_server/           # MCP server实现
├── 05_rag_example/          # RAG例子
├── files/                   # 测试文件目录
├── requirements.txt         # 项目依赖
├── run_all_examples.py     # 运行所有示例的脚本
└── README.md               # 项目说明

功能特性

1. 基本Prompt请求 (01_basic_prompt)

  • 简单对话示例
  • 结构化Prompt模板
  • 多轮对话支持

2. Agent例子 (02_agent_example)

  • 文件列表工具 (ListFilesTool)
  • 文件编辑工具 (EditFilesTool)
  • 多工具联动示例

3. Function Call例子 (03_function_call)

  • OpenAI原生函数调用
  • 文件操作功能实现
  • 多步骤任务处理

4. MCP Server实现 (04_mcp_server)

  • Model Context Protocol服务器
  • 标准化工具接口
  • 异步操作支持

5. RAG例子 (05_rag_example)

  • 检索增强生成
  • 向量数据库集成
  • 动态文档管理

快速开始

1. 安装依赖

pip install -r requirements.txt

2. 环境配置

创建 .env 文件并配置您的OpenAI API密钥:

# 基本配置
echo "OPENAI_API_KEY=your_api_key_here" > .env

# 如果您需要使用自定义API端点(可选)
echo "OPENAI_BASE_URL=https://your-custom-endpoint.com/v1" >> .env

3. 运行所有示例

python run_all_examples.py

4. 运行单个示例

# 运行基本prompt示例
cd 01_basic_prompt
python main.py

# 运行Agent示例
cd 02_agent_example
python main.py

# 运行Function Call示例
cd 03_function_call
python main.py

# 运行MCP Server示例
cd 04_mcp_server
python server.py

# 运行RAG示例
cd 05_rag_example
python main.py

技术栈

  • Python 3.8+: 主要编程语言
  • OpenAI API: 大语言模型服务
  • LangChain: AI应用开发框架
  • Chroma: 向量数据库
  • Pydantic: 数据验证
  • FastAPI: Web框架 (MCP Server)

代码规范

  • 日志: 使用英文记录日志
  • 注释: 使用中文注释
  • 文档字符串: 使用英文,包含完整的参数和返回值说明
  • 错误处理: 完整的异常处理和错误信息
  • 类型提示: 完整的类型注解

注意事项

  1. API密钥: 请妥善保管您的OpenAI API密钥,不要提交到版本控制系统
  2. 自定义API端点: 如果您使用自定义API端点,请在 .env 文件中设置 OPENAI_BASE_URL
  3. 文件操作: Agent和Function Call示例只会修改 files/ 目录及其子目录下的文件,不会影响项目代码
  4. 依赖版本: 建议使用虚拟环境来避免依赖冲突
  5. 网络连接: 确保能够访问OpenAI API服务

配置说明

环境变量

  • OPENAI_API_KEY: 您的OpenAI API密钥(必需)
  • OPENAI_BASE_URL: 自定义API端点URL(可选)

使用自定义API端点

如果您需要使用自定义的API端点(如代理服务器),可以:

  1. .env 文件中设置:
OPENAI_API_KEY=your_api_key_here
OPENAI_BASE_URL=https://your-custom-endpoint.com/v1
  1. 或者在代码中直接指定:
from config import get_openai_config
config = get_openai_config()

扩展建议

  • 添加更多工具和功能
  • 集成其他大语言模型
  • 实现更复杂的Agent工作流
  • 添加Web界面
  • 支持更多文档格式

贡献

欢迎提交Issue和Pull Request来改进这个项目!

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages