DelphiOpenAI: Delphi开发者的OpenAI API封装库

RayRay
Delphi OpenAI APIOpenAI自然语言处理人工智能APIGithub开源项目

DelphiOpenAI简介

DelphiOpenAI是一个为Delphi开发者提供的非官方OpenAI API封装库。它允许开发者在Delphi应用程序中轻松集成和使用OpenAI的各种强大功能,如ChatGPT、DALL-E等。该库由GitHub用户HemulGM开发和维护,旨在为Delphi社区提供便捷的OpenAI API访问方式。

主要特性

  • 支持OpenAI的大部分API功能,包括Models、Completions、Chat、Images等
  • 简单易用的API封装,支持Delphi风格的编程方式
  • 跨平台支持,可在Windows、Linux、macOS、Android、iOS等平台上使用
  • 无需第三方依赖,直接集成到Delphi项目中即可使用
  • 提供详细的使用文档和示例代码

支持的OpenAI功能

DelphiOpenAI目前支持以下OpenAI API功能:

  • Models: 列出和描述可用的AI模型
  • Completions: 根据提示生成文本补全
  • Chat: 进行对话式交互
  • Images: 根据文本描述生成图像
  • Embeddings: 生成文本的向量表示
  • Audio: 语音识别和转录
  • Files: 上传和管理文件
  • Fine-tuning: 微调模型
  • Moderations: 内容审核

此外,该库还在持续开发中,计划支持更多OpenAI的新功能。

安装和使用

安装

要使用DelphiOpenAI,您可以通过以下两种方式之一进行安装:

  1. 通过Delphi的GetIt包管理器直接安装(推荐方式)。

  2. 从GitHub下载源代码,并将root文件夹添加到IDE的库路径或项目源代码路径中。

基本使用步骤

  1. 首先,您需要从OpenAI获取API密钥。访问OpenAI API密钥页面获取。

  2. 在您的Delphi单元中引入OpenAI单元:

uses OpenAI;
  1. 创建OpenAI客户端实例:
var OpenAI: IOpenAI; begin OpenAI := TOpenAI.Create(API_TOKEN); // 使用OpenAI客户端... end;
  1. 现在您可以使用OpenAI客户端调用各种API功能了。

功能示例

使用ChatGPT进行对话

以下是使用DelphiOpenAI与ChatGPT进行对话的示例代码:

var Chat: TChat; begin Chat := OpenAI.Chat.Create( procedure(Params: TChatParams) begin Params.Messages([TChatMessageBuild.Create(TMessageRole.User, '你好,请介绍一下你自己。')]); Params.MaxTokens(1024); end); try for var Choice in Chat.Choices do Memo1.Lines.Add(Choice.Message.Content); finally Chat.Free; end; end;

使用DALL-E生成图像

以下是使用DelphiOpenAI调用DALL-E API生成图像的示例:

var Images: TImageResponse; begin Images := OpenAI.Image.Create( procedure(Params: TImageCreateParams) begin Params.Prompt('一只可爱的卡通猫咪'); Params.ResponseFormat('url'); end); try for var Image in Images.Data do Image1.Bitmap.LoadFromUrl(Image.Url); finally Images.Free; end; end;

高级功能

流式响应

DelphiOpenAI支持OpenAI的流式响应功能,这对于实现实时对话非常有用:

OpenAI.Chat.CreateStream( procedure(Params: TChatParams) begin Params.Messages([TChatMessageBuild.User('讲个笑话')]); Params.MaxTokens(1024); Params.Stream; end, procedure(Chat: TChat; IsDone: Boolean; var Cancel: Boolean) begin if (not IsDone) and Assigned(Chat) then Writeln(Chat.Choices[0].Delta.Content) else if IsDone then Writeln('完成!'); end);

函数调用

DelphiOpenAI还支持OpenAI的函数调用功能,这允许AI模型调用预定义的函数:

var Chat: TChat; begin Chat := OpenAI.Chat.Create( procedure(Params: TChatParams) begin Params.Functions(Funcs); // 函数列表 Params.FunctionCall(TFunctionCall.Auto); Params.Messages([TChatMessageBuild.User('今天天气如何?')]); Params.MaxTokens(1024); end); try for var Choice in Chat.Choices do if Choice.FinishReason = TFinishReason.FunctionCall then ProcFunction(Choice.Message.FunctionCall) else Memo1.Lines.Add(Choice.Message.Content); finally Chat.Free; end; end;

注意事项

  1. API密钥安全: 由于使用DelphiOpenAI需要您的OpenAI API密钥,请确保在客户端应用程序中小心使用,避免密钥泄露。

  2. 费用控制: 使用OpenAI API会产生费用,请注意控制使用量,避免超出预算。

  3. 错误处理: 在使用API时,请确保添加适当的错误处理代码,以应对可能出现的网络问题或API限制。

  4. 版本兼容性: DelphiOpenAI支持Delphi 10.3及以上版本。如果您使用较早版本的Delphi,可能需要进行一些修改。

结语

DelphiOpenAI为Delphi开发者提供了一个强大而简洁的工具,使他们能够轻松地将OpenAI的先进AI功能集成到自己的应用程序中。无论您是想开发一个智能聊天机器人,还是想在应用中添加图像生成功能,DelphiOpenAI都能为您提供所需的工具和接口。

随着AI技术的不断发展,OpenAI也在持续推出新的功能和改进。DelphiOpenAI的开发团队也在积极跟进这些更新,以确保Delphi开发者能够始终使用最新、最强大的AI功能。

如果您是一名Delphi开发者,并且对AI技术感兴趣,那么DelphiOpenAI无疑是一个值得尝试的库。它不仅可以帮助您快速构建智能应用,还能让您深入了解和探索AI技术的潜力。现在就开始使用DelphiOpenAI,让您的Delphi应用变得更智能、更强大吧!

DelphiOpenAI Logo

相关链接

让我们一起探索AI与Delphi开发的美妙结合吧! 🚀🤖

编辑推荐精选

iTerms

iTerms

企业专属的AI法律顾问

iTerms是法大大集团旗下法律子品牌,基于最先进的大语言模型(LLM)、专业的法律知识库和强大的智能体架构,帮助企业扫清合规障碍,筑牢风控防线,成为您企业专属的AI法律顾问。

SimilarWeb流量提升

SimilarWeb流量提升

稳定高效的流量提升解决方案,助力品牌曝光

稳定高效的流量提升解决方案,助力品牌曝光

Sora2视频免费生成

Sora2视频免费生成

最新版Sora2模型免费使用,一键生成无水印视频

最新版Sora2模型免费使用,一键生成无水印视频

Transly

Transly

实时语音翻译/同声传译工具

Transly是一个多场景的AI大语言模型驱动的同声传译、专业翻译助手,它拥有超精准的音频识别翻译能力,几乎零延迟的使用体验和支持多国语言可以让你带它走遍全球,无论你是留学生、商务人士、韩剧美剧爱好者,还是出国游玩、多国会议、跨国追星等等,都可以满足你所有需要同传的场景需求,线上线下通用,扫除语言障碍,让全世界的语言交流不再有国界。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

热门AI辅助写作AI工具讯飞绘文内容运营AI创作个性化文章多平台分发AI助手
TRAE编程

TRAE编程

AI辅助编程,代码自动修复

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

AI工具TraeAI IDE协作生产力转型热门
商汤小浣熊

商汤小浣熊

最强AI数据分析助手

小浣熊家族Raccoon,您的AI智能助手,致力于通过先进的人工智能技术,为用户提供高效、便捷的智能服务。无论是日常咨询还是专业问题解答,小浣熊都能以快速、准确的响应满足您的需求,让您的生活更加智能便捷。

imini AI

imini AI

像人一样思考的AI智能体

imini 是一款超级AI智能体,能根据人类指令,自主思考、自主完成、并且交付结果的AI智能体。

Keevx

Keevx

AI数字人视频创作平台

Keevx 一款开箱即用的AI数字人视频创作平台,广泛适用于电商广告、企业培训与社媒宣传,让全球企业与个人创作者无需拍摄剪辑,就能快速生成多语言、高质量的专业视频。

即梦AI

即梦AI

一站式AI创作平台

提供 AI 驱动的图片、视频生成及数字人等功能,助力创意创作

下拉加载更多