openai clojure
0.22.0
Clojure功能可驱动OpenAI API和Azure OpenAI API
这个非正式的库旨在隐藏2个API之间的小差异,因此允许开发可以与两个变体一起使用的工具和应用程序。
| Openai | Azure Openai | |
|---|---|---|
| 版本 | v2.3.0 | V2024-06-01 |
| 聊天 | x | x |
| 声音的 | x | x |
| 完成 | x | x |
| 嵌入 | x | x |
| 型号 | x | |
| 图像 | x | x |
| 文件 | x | |
| 微调 | x | |
| 适中 | x | |
| 助手 | (beta) | |
| 线程 | (beta) | |
| 消息 | (beta) | |
| 运行 | (beta) | |
| 向量存储 | (beta) |
添加openai-clojure依赖性
net.clojars.wkok/openai-clojure {:mvn/version "0.22.0"}
[net.clojars.wkok/openai-clojure "0.22.0"]
最低Java 11需要
将环境变量OPENAI_API_KEY设置为OpenAI API键。
(有关通过API密钥的替代选项,请参阅选项)
可以在OpenAI帐户中生成API密钥
可选- 如果您的OpenAI帐户使用多个组织,请将环境变量OPENAI_ORGANIZATION设置为用于应用程序的一个。
请参阅:身份验证-Azure Openai
有关所有支持的OpenAI API的示例,请参见完整的API参考。
需要api名称空间
(:require [wkok.openai-clojure.api :as api])
与Openai的Chatgpt进行的简单聊天对话可能是:
( api/create-chat-completion { :model " gpt-3.5-turbo "
:messages [{ :role " system " :content " You are a helpful assistant. " }
{ :role " user " :content " Who won the world series in 2020? " }
{ :role " assistant " :content " The Los Angeles Dodgers won the World Series in 2020. " }
{ :role " user " :content " Where was it played? " }]})结果:
{ :id " chatcmpl-6srOKLabYTpTRwRUQxjkcBxw3uf1H " ,
:object " chat.completion " ,
:created 1678532968 ,
:model " gpt-3.5-turbo-0301 " ,
:usage { :prompt_tokens 56 , :completion_tokens 19 , :total_tokens 75 },
:choices
[{ :message
{ :role " assistant " ,
:content
" The 2020 World Series was played at Globe Life Field in Arlington, Texas. " },
:finish_reason " stop " ,
:index 0 }]}请随时在GitHub上提出问题或发送拉请请求
该库使用火星人-HTTP抽象库
这是一个非正式的图书馆,它不隶属于Openai
麻省理工学院许可证
版权(C)2023 Werner Kok
特此免费授予获得此软件副本和相关文档文件副本(“软件”)的任何人,以无限制处理该软件,包括无限制的使用权,复制,复制,修改,合并,合并,发布,分发,分发,分发,订婚,和/或允许软件的副本,并允许对以下条件提供以下条件,以下是以下条件。
上述版权通知和此许可通知应包含在软件的所有副本或大量部分中。
该软件是“原样”提供的,没有任何形式的明示或暗示保证,包括但不限于适销性,特定目的的适用性和非侵权的保证。在任何情况下,作者或版权持有人都不应对任何索赔,损害赔偿或其他责任责任,无论是在合同,侵权的诉讼中还是其他责任,是由软件,使用或与软件中的使用或其他交易有关的。