Clojure 기능 OpenAI API 및 Azure OpenAi API를 구동하는 기능
이 비공식 라이브러리는 2 API 사이의 작은 차이를 숨기는 것을 목표로하므로 두 변형과 함께 작동 할 수있는 도구와 응용 프로그램을 개발할 수 있습니다.
| Openai | Azure Openai | |
|---|---|---|
| 버전 | v2.3.0 | V2024-06-01 |
| 채팅 | 엑스 | 엑스 |
| 오디오 | 엑스 | 엑스 |
| 완성 | 엑스 | 엑스 |
| 임베딩 | 엑스 | 엑스 |
| 모델 | 엑스 | |
| 이미지 | 엑스 | 엑스 |
| 파일 | 엑스 | |
| 미세 조정 | 엑스 | |
| 중재 | 엑스 | |
| 조수 | (베타) | |
| 스레드 | (베타) | |
| 메시지 | (베타) | |
| 실행 | (베타) | |
| 벡터 저장 | (베타) |
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 추상화 라이브러리 인 Martian을 사용합니다
이것은 비공식 도서관이며 OpenAi와 함께 보증하거나 승인하지 않습니다.
MIT 라이센스
저작권 (C) 2023 Werner Kok
이에 따라이 소프트웨어 및 관련 문서 파일 ( "소프트웨어")의 사본을 얻는 사람에게는 허가가 부여됩니다. 소프트웨어의 사용, 복사, 수정, 합병, 배포, 배포, 숭고 및/또는 소프트웨어의 사본을 판매 할 권한을 포함하여 제한없이 소프트웨어를 처리 할 수 있도록 소프트웨어를 제공 할 권한이 없습니다.
위의 저작권 통지 및이 권한 통지는 소프트웨어의 모든 사본 또는 실질적인 부분에 포함되어야합니다.
이 소프트웨어는 상업성, 특정 목적에 대한 적합성 및 비 침해에 대한 보증을 포함하여 명시 적 또는 묵시적 보증없이 "그대로"제공됩니다. 어떠한 경우에도 저자 또는 저작권 보유자는 계약, 불법 행위 또는 기타, 소프트웨어 또는 소프트웨어의 사용 또는 기타 거래에서 발생하는 계약, 불법 행위 또는 기타의 행동에 관계없이 청구, 손해 또는 기타 책임에 대해 책임을지지 않아야합니다.