LangChain Coder AI README
📌 目录
简介
- 英文:
LangChain Coder AI 是一个由 OpenAI 和 Vertex AI 提供支持的最先进的代码生成工具。它为开发者提供了一种无缝体验,可以根据提供的提示生成各种语言的代码片段。
该工具集成了先进的 AI 模型,如
OpenAI: GPT-3.5, GPT-3.5 Turbo, GPT-4
Google: Code Gecko 和 Code Bison, PALM 和 Gemini
确保从这些强大的模型中输出高质量的代码。
功能
- AI 驱动的代码生成和完成:利用 OpenAI 和 Vertex AI 模型提供高效且准确的代码建议。
- 保存和执行代码:提供保存生成代码并立即执行的选项。
- 编码指南:确保生成的代码遵循模块化、异常处理、错误处理、日志记录、注释、效率、健壮性、内存管理、速度优化和命名规范等标准。
- 高级代码编辑器:通过调整字体大小、标签大小、主题、按键绑定、行号、打印边距、换行、自动更新、只读模式和语言选择等功能定制您的编码体验。
- 可定制的设置:调整温度、最大令牌数、模型名称、项目、区域和 Vertex AI 的凭据文件等设置。
- 离线和在线编译模式:选择离线和在线编译器模式执行代码。
LangChain Coder 实践
观看该视频了解 LangChain Coder 的实际操作!
AI 部分
🤖 OpenAI
- 可定制的设置:在设置中调整令牌、温度并直接设置您的 API Key。
- 模型选择:选择包括 GPT 3.5、GPT 3.5 Turbo 和最新的 GPT 4 在内的各种模型。
🌐 Vertex AI
- 可定制的设置:在设置中微调令牌、温度,并设置您的凭据 Key。
- 模型选择:选择 Code Gecko 用于代码完成和 Code Bison 用于代码生成。这些模型旨在支持代码完成和生成,提升您的编码体验。
WebUI - 应用展示
🌆 这是应用程序的主屏幕。输入一个文本提示,选择您的语言,然后通过按钮让魔法发生。
🎨 看看画布在完成杰作之后。代码生成从未如此美丽。
OpenAI 集成
LangChain Coder AI 集成了 OpenAI,利用其强大的机器学习模型进行代码生成。OpenAI 是一家 AI 研究和部署公司。有关 LangChain 如何集成 OpenAI 的详细信息,请参阅官方文档。
使用 LangChain Coder AI 需要 OpenAI API Key。要获取您的 key,请执行以下步骤:
获取 OpenAI API key
- 前往 OpenAI 网站。
- 填写表格的信息并点击“创建账户”。
- 登录后,点击左侧菜单中的“API Keys”。
- 点击“生成新 Key”创建新的 API key。
- 复制您的 API key——我们将在 Python 代码中稍后使用它。
Vertex AI 集成
LangChain Coder AI 集成了 Google Vertex AI,利用其强大的机器学习模型进行代码生成。Vertex AI 提供了一系列 ML 和 AI 工具和服务,LangChain Coder AI 利用这些资源提供最优质的代码建议。有关 LangChain 如何集成 Vertex AI 的详细信息,请参阅官方文档。
此外,Vertex AI 的 Python SDK 允许自动化数据摄取、模型训练和 Vertex AI 上的预测。它提供了一种以编程方式访问 Google Cloud 控制台中大多数功能的方法。有关更多信息,请查看 Vertex AI Python SDK。
使用 LangChain Coder AI 需要 Google Vertex 服务账号凭据。要获取您的凭据,请执行以下步骤:
Google Vertex AI 服务账号凭据
- 前往 Google Cloud Platform 控制台。
- 点击页面左上角的 菜单 按钮(三条横线)。
- 选择 IAM 和 Admin > 服务账号。
- 点击 创建服务账号 按钮。
- 在 服务账号名称 字段中输入服务账号的名称。
- 为服务账号选择 编辑者 角色。
- 点击 创建 按钮。
- 点击 密钥 选项卡。
- 点击 添加密钥 按钮。
- 选择 JSON 作为密钥类型。
- 点击 创建 按钮。
下载 JSON
格式的文件后,您需要将其上传到应用程序中。按以下步骤操作:
输入项目名称和项目位置,您就可以开始使用了。
这是一个示例服务 JSON 文件。
{
"type": "service_account",
"project_id": "my-project-id",
"private_key_id": "my-private-key-id",
"private_key": "-----BEGIN PRIVATE KEY-----\nmy-private-key\n-----END PRIVATE KEY-----\n",
"client_email": "my-service-account@my-project-id.iam.gserviceaccount.com",
"client_id": "my-client-id"
}
PALM AI 集成:
LangChain Coder AI 集成了 PALM AI,利用其强大的机器学习模型进行代码生成。
- PALM AI 是 Google AI 的传统模型,现在已 淘汰。
Gemini AI 集成:
LangChain Coder AI 集成了 GEMINI AI,利用其强大的机器学习模型进行代码生成。
- Gemini AI 是 Google AI 的最新模型,是 PALM AI 的 最新继任者。
设置: 获取 PALM/GEMINI AI key
步骤 1: 获取 Google Palm/Gemini API key。
步骤 2: 访问以下 URL: *https://makersuite.google.com/app/apikey*。
步骤 3: 点击 创建 API Key 按钮。
步骤 4: 生成的 key 是您的 API key。
请确保 复制 并 粘贴 在下方所需字段中的地方。
注意: API key 对于 Google AI 模型的功能至关重要。请确保将其保存好,不要与任何人分享。
📸 图片展示
主屏幕 UI
应用程序的主屏幕.
生成的代码 UI
在用户友好的 UI 中显示生成的代码。
API 费率
显示 OpenAi 和 Vertex AI 的 API 费率。
暗主题代码编辑器
一个黑暗主题的代码编辑器,为舒适的编程体验。
编码指南
强调 LangChain Coder AI 支持的编码指南。
离线编译器
展示用于执行代码的离线编译器模式。
在线编译器
支持多种语言的在线编译器模式。
Swift Code Demo
展示Swift代码生成的示范。
Vertex AI Code Gecko
展示Vertex AI Code Gecko的代码完成功能。
使用的包
- streamlit: 创建数据应用的快速且简单的方法。
- streamlit_ace: Ace编辑器的Streamlit组件。
- google-auth: 谷歌认证库。
- google-auth-oauthlib: 用于OAuth的谷歌认证库。
- google-cloud-aiplatform: 交互Vertex AI API的客户端库。
- langchain: 交互LangChain API的Python客户端库。
- openai: 交互OpenAI API的Python客户端库。
- python-dotenv: 从.env文件读取键值对并添加到环境变量中。
- vertexai: 交互Vertex AI API的Python客户端库。
📚 链接和参考
Star History
版本控制
Version 1.7 包含以下功能:
- 在线编译器API: 添加了新的在线编译器API。
- 代码片段示例: 从简单到复杂任务的代码片段示例。
- 代码调试器: 添加了新的代码调试器。
- JDoodle编译器: JDoodle编译器支持超过70种编程语言。
- 新的UI/UX设计: 更新了新的UI/UX设计。
Version 1.6 包含以下功能:
- GEMINI AI 免费版: LangChain Coder AI整合了GEMINI AI 免费版。
- 代码调试器: LangChain Coder AI整合了代码调试器。
- 新的UI/UX设计: LangChain Coder AI整合了新的UI/UX设计。
Version 1.5 包含以下功能:
- GEMINI AI 集成: LangChain Coder AI整合了GEMINI AI。
- 可定制的设置: 在设置中直接调整代币、温度和设置你的API密钥。
- 模型选择: 从包括gemini-pro,gemini-pro-vision在内的多种模型中选择。
- GEMINI AI 模型 GEMINI 2 支持以下模型:
- gemini-pro: 一个可以用于生成提示的响应的聊天机器人模型。
- gemini-pro-vision: 一个可以用于根据给定提示生成文本的图像生成模型。
Version 1.4 包含以下功能:
- PALM AI 集成: LangChain Coder AI整合了PALM AI。
- 可定制的设置: 在设置中直接调整代币、温度和设置你的API密钥。
- 模型选择: 从包括chat-bison,text-bison,embedding-gecko在内的多种模型中选择。
- PALM AI 模型 PALM 2 支持以下模型:
- chat-bison: 一个可以用于生成提示响应的聊天机器人模型。
- text-bison: 一个可以用于根据给定提示生成文本的文本生成模型。
- embedding-gecko: 一个可以用于生成给定文本嵌入的文本嵌入模型。
Version 1.3 包含以下功能:
- AI驱动的代码生成和完成
- 使用OpenAI和Vertex AI模型
- 保存、执行代码和选择编码指南
- 高级代码编辑器功能
- 可定制的Vertex AI设置
- 离线和在线编译模式
- 代码指南:
- 模块化
- 异常处理
- 错误处理
- 日志记录
- 注释
- 效率
- 健壮性
- 内存管理
- 速度优化
- 命名规范
Version 1.3的新功能: 使用OpenAI和Vertex AI模型进行AI驱动的代码生成和完成。
贡献
如果你想为这个项目做出贡献,并通过新点子让它变得更好,欢迎你的拉取请求。如果你发现任何问题,请将其放在仓库问题部分,谢谢。
许可证
本项目根据MIT许可证许可,因此可以自由使用。
代码执行许可证 - 离线:
- 您需对您编写、编译和执行的代码负全责。
- 您同意不编写、编译或运行任何非法、有害、恶意、冒犯、侵权或其他违反任何法律、权利或政策的代码。
- 您同意不编写、编译或运行任何可能损坏、干扰或妥协平台、JDoodle编译器API或任何其他系统或服务的代码。
- 您同意不编写、编译或运行任何可能访问或泄露任何机密或敏感信息的代码。
代码执行许可证 - 在线/API:
- 平台使用 JDoodle 编译器 编译和执行你的代码。
作者
由HeavenHM精心打造。