DelphiGenAI
MaxiDonkey/DelphiGenAI加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
加载项目详情…
本应用为开源项目,仅供学习研究,请遵守其开源协议。
张老师在某政务系统公司干了十五年 Delphi 开发,从 Delphi 7 到 Delphi 10.4,核心业务逻辑全靠 Pascal 跑得稳稳当当。2024 年大模型浪潮袭来,甲方开始要求"系统要接入 AI 能力"——智能问答、自动生成报告、智能检索合同文本——张老师翻遍了 Delphi 的生态,几乎找不到像样的 OpenAI 封装库。GitHub 上零星几个第三方组件,要么只支持 v1/chat/completions 旧接口,要么连 SSE 流式响应都不会处理,更别提 function calling、MCP 远程调用这些新玩法了。
直到他遇到了 DelphiGenAI。
这个由社区开发者 MaxiDonkey 维护的开源项目,填补了 Delphi 生态中一个被长期忽视的空白——它是目前唯一一个完整覆盖 OpenAI 全量 API 的 Delphi 封装库,从最基础的文本生成到最前沿的 Responses Agent 架构,从语音合成到图片生成,从向量存储到 RAG 检索,全部有对应的 Delphi 类型和 fluent builder 接口。
Delphi(Object Pascal)在全球拥有数十万开发者,其中相当比例分布在欧洲、巴西和东南亚的政企、金融、嵌入式领域。但 OpenAI 自 2022 年底 ChatGPT 爆火以来,从未提供过任何非英语语言的官方 SDK,Delphi 更是完全空白。MaxiDonkey 从 2023 年开始着手开发,历经数十个版本的迭代(目前已达 v2.0.0),从最初的 Chat Completions 封装逐步扩展到 Responses API、Skills、Containers 等最新能力。MIT 许可证允许商业使用,项目同时上架了 Embarcadero 官方的 GetIt 包管理器,Delphi 12 社区版用户可以免费编译使用。
DelphiGenAI 的设计哲学是严格一对一映射 OpenAI API,不引入 provider 特有的扩展或行为适配。核心能力体现在以下几个层面:
一、双轨 API 支持:项目同时支持 v1/chat/completions(经典聊天接口)和 v1/responses(新版 Agentic 接口)。Responses API 是 OpenAI 面向 Agent 场景的新一代核心接口,内置了 Web Search、File Search、Code Interpreter、Image Generation、Remote MCP、Skills、Containers 等工具链,DelphiGenAI 对两套接口做到了对齐覆盖,并在 README 中提供了清晰的对照表。
二、Function Calling 与工具调用:支持声明式函数(工具)定义和 schema 验证,可以将 Delphi 程序中的任意函数注册为 AI 可调用的工具,实现"AI 指挥 Delphi 干活"的交互模式。
三、三种执行模式:
四、多 Provider 支持:同一个 IGenAI 接口可以连接 OpenAI、LM Studio(本地模型)、Google Gemini(通过 OpenAI 兼容层),无需修改业务代码,只需切换工厂方法。
五、端点全覆盖:根据 README 的功能表,DelphiGenAI 覆盖了 OpenAI 平台几乎所有端点,包括语音合成/转写、批处理、嵌入、文件管理、微调、审核、实时对话、向量存储、RAG 等,2026 年 6 月最新版本(v2.0.0)还移除了已废弃的 Assistants API 和 Sora 视频 API,保持与 OpenAI 平台同步。
对于已有 Delphi 环境的开发者,上手门槛几乎为零。只需要两步:
GenAIOptimizedOpenAIIntegrationWrapperGenAI 和 GenAI.Types 两个核心单元,调用 TGenAIFactory.CreateInstance(api_key) 即可开始文档采用聚焦式 Markdown 指南的组织方式,每个能力独立成篇,从同步到异步到 SSE 流式,分步骤给出 Delphi-first 的代码示例,而非原始 JSON 拼装。README 还附带了一个完整的 FMX(跨平台 GUI)演示应用,基于 Pythia-WebView2 构建,展示了一个真实的 AI 对话界面,包括流式响应、JSON 追踪、函数/MCP/Skill/Agent 卡片、图片生成、Whisper 语音输入等完整链路。
门槛差异说明:非 Delphi 开发者(Python/JS/Go 背景)无法直接使用该项目,但可以参考其架构设计理解 OpenAI API 的 Delphi 实现思路。
DelphiGenAI 的 source 目录包含 80 个 Pascal 单元,采用了清晰的模块化分层:
GenAI.API.pas 封装底层 HTTP 逻辑,GenAI.API.Streams.pas 处理流式响应,GenAI.API.SSEDecoder.pas 解码 Server-Sent Events,GenAI.API.JSONShield.pas 提供安全的 JSON 序列化GenAI.Async.Params.pas 提供异步调用参数构造,GenAI.Responses.pas 封装 Responses API,GenAI.ChatCompletion.pas 封装 Chat Completions APIGenAI.Tools.pas、GenAI.Skills.pas、GenAI.Containers.pas、GenAI.MCP.pas 分别对应函数调用、技能、代码执行容器和 MCP 协议GenAI.Monitoring.pas 监控运行中的 HTTP 请求,防止应用关闭时出现"请求仍在飞"的问题GenAI.Types.pas 和多个 Params/Builder 单元提供强类型 DSL,确保编译期类型安全架构类型可归类为分层客户端封装库(Layered Client Wrapper Library),核心是 HTTP API 客户端 + 领域模型 + fluent builder 模式,代码质量通过 Pascal 静态类型系统和单元测试(GenAI.API.Tests.pas)保障。
一、平台锁定风险:DelphiGenAI 深度依赖 VCL/FMX 框架和 Delphi 编译器,无法跨语言复用。对于正在向 Web/云原生转型的团队,Delphi 本身的生态局限性会传导到 AI 能力上。
二、IDE 依赖:虽然 Delphi 12 CE 免费,但下载安装 Delphi IDE 本身需要较大的时间和磁盘成本(完整安装约 20GB+),且 Delphi IDE 仅支持 Windows/macOS。
三、Provider 覆盖有限:目前仅官方支持 OpenAI 和 LM Studio,Google Gemini 需要通过 OpenAI 兼容层而非原生 SDK 接入,部分细微差异可能导致非标准参数不可用。
四、社区规模较小:87 stars 在 GitHub 上属于早期项目,文档以英文为主,对非英语 Delphi 社区的帮助有限。
五、v2.0.0 破坏性变更:2.0.0 版本移除了 Assistants API 和 Sora 视频 API,已有项目迁移需要修改代码。
Delphi 作为一个有着 30 年历史的编程语言,其生命力顽强程度远超外界想象——全球仍有大量关键基础设施运行在 Delphi 构建的系统上。DelphiGenAI 的出现,意味着这些"老系统"不必重写就能拥抱 AI 能力:通过 Skills 机制可以让 AI 调用 Delphi 程序中的已有业务函数,通过 Containers 可以让 AI 在隔离环境中执行代码并返回结果,通过 Vector Stores 可以实现私有知识的 RAG 检索。
对于 AI 爱好者来说,这个项目是一个观察"传统桌面开发语言如何与 LLM 时代接轨"的窗口;对于 Delphi 开发者来说,它是目前最完整、最活跃的 OpenAI 集成方案,值得在 AI 转型项目中优先评估。