一个可用于生产的模板,用于启动您的生成式AI项目,并考虑到结构和可扩展性。
一个生产就绪的模板,帮助您启动和组织生成式AI项目,并考虑清晰度和可扩展性。旨在减少早期开发中的混乱,并通过经过验证的结构和实践支持长期可维护性。
项目目录结构
- generative_ai_project/: 项目的根目录。
- config/: 存放配置文件。
- init.py: 初始化文件。
- model_config.yaml: 模型配置文件。
- prompt_templates.yaml: 提示模板文件。
- logging_config.yaml: 日志配置文件。
- src/: 源代码目录,包含模块化逻辑。
- llm/: 大型语言模型相关代码。
- init.py: 初始化文件。
- base.py: 基础类或函数。
- clause_client.py: 客户端代码。
- gpt_client.py: GPT客户端代码。
- utils.py: 工具函数。
- prompt_engineering/: 提示工程相关代码。
- init.py: 初始化文件。
- templates.py: 提示模板。
- few_shot.py: 少量样本处理。
- chainer.py: 链式调用。
- utils/: 工具函数。
- init.py: 初始化文件。
- rate_limiter.py: 速率限制器。
- token_counter.py: 令牌计数器。
- cache.py: 缓存。
- logger.py: 日志记录器。
- handlers/: 处理程序。
- init.py: 初始化文件。
- error_handler.py: 错误处理程序。
- llm/: 大型语言模型相关代码。
- data/: 数据目录。
- cache/: 缓存数据。
- prompts/: 提示数据。
- outputs/: 输出数据。
- embeddings/: 嵌入数据。
- examples/: 示例代码。
- basic_completion.py: 基本完成示例。
- chat_session.py: 聊天会话示例。
- main_prompts.py: 主提示示例。
- notebooks/: Jupyter Notebooks。
- prompt_testing.ipynb: 提示测试。
- response_analysis.ipynb: 响应分析。
- model_experimentation.ipynb: 模型实验。
- requirements.txt: 项目依赖包列表。
- setup.py: 安装脚本。
- README.md: 项目说明文件。
- Dockerfile: Docker构建文件。
- config/: 存放配置文件。
项目概况
用于构建可扩展的生成式AI应用程序的生产就绪模板-结构化,可维护,并基于真实世界的最佳实践构建。
关键组件
- config/ -代码外的配置
- src/ -具有模块化逻辑的结构化源代码
- data/ -组织各种数据类型的存储库
- examples/ -实现指南
- notebooks/ -交互式探索和分析
最佳实践
- 跟踪提示版本和结果
- 使用YAML文件分隔文件
- 明确模块边界的结构代码
- 缓存响应以减少延迟和成本
- 使用自定义异常处理错误
- 使用笔记本进行快速测试和迭代
- 监控API使用情况并设置速率限制
- 保持代码和文档同步
开始使用
- 克隆repo
- 通过requirements.txt安装
- 设置模型模板
- 检查示例代码
- 在notebooks笔记本中开始
开发技巧
- 采用模块化结构
- 尽早测试组件
- 使用版本控制进行跟踪
- 保持数据集最新
- 监控 API 使用情况
核心文件
- requirements.txt– 包依赖关系
- README.md– 项目概述和用途
- Dockerfile– 容器构建说明
有两条路:低代码构建器或 AI 开发人员我将同时编写这两条路:
1.低代码构建器:无需编写代码即可构建
如果你不是一个开发人员,或者刚刚开始,这条路适合你。你不需要训练模型或编写完整的应用程序。你可以像使用电动工具一样使用AI。
这是你会学到的东西
- JSON基础知识
- 什么是API以及如何调用它们
- 如何写出清晰的AI提示
- n8n或make + OpenAI
- 谷歌表格+克劳德
- 提示工程
- + 低代码工具
2. AI 开发者:将 AI 接入现有技术栈
如果您是全栈开发人员,则无需成为机器学习研究员。您已经具备了构建 AI 所需的一切。
你无需训练模型或对其进行微调。但作为一名全栈开发者,你的工作是构建应用程序、选择合适的模型、评估输出、部署解决方案并了解 LLM 成本基础知识。
如果你正在独立开发或发布自己的产品,这五件事就显得尤为重要。你需要了解完整的软件开发周期,并根据 AI 进行调整。相信我,这并不像听起来那么复杂。
你将开始学习什么
- AI 应用/解决方案架构
- OpenAI、Claude 或 Mistral API
- 快速设计和链接
- 向量数据库,例如 Pinecone 或 Supabase
- 如何部署你的应用
- 基本法学硕士费用估算
- LLM API:OpenAI、Claude 或 Mistral
- 系统提示(ReAct 推理和行动框架)
- LangChain、CrewAI、Python……
- 向量数据库:Supabase、Pinecone 或 Weaviate
- RAG 基础设施:分块、嵌入、检索逻辑
- 部署:无服务器(Vercel/Fly.io)或基于容器