GPTyped에 오신 것을 환영합니다! ? 유형이 안전한 방식으로 OpenAI의 GPT 언어 모델과 상호 작용할 수 있게 해주는 작지만 강력한 NPM 패키지입니다. GPTyped를 사용하면 웹에서 실행하든 서버에서 실행하든 상관없이 개체를 프롬프트로 보내고 LLM AI로부터 구조화된 응답을 쉽게 받을 수 있습니다.
TypeScript 개체를 프롬프트로 보내고 TypeScript 개체를 응답으로 받습니다.
? 언제든지 요청이나 응답을 변경하기 위해 인터셉터를 사용하여 완전히 사용자 정의할 수 있습니다.
? GPT와 쉽게 통합할 수 있도록 OpenAI 클라이언트가 사전 로드되어 있습니다.
Zod를 사용하여 반환된 개체 스키마의 유효성을 검사합니다.
메모리 및 메타프롬프트와 같은 일반적인 프롬프트 패턴을 지원합니다.
NPM 또는 Yarn을 사용하여 GPTyped를 설치할 수 있습니다.
npm gptyped zod 설치
또는
원사 gptyped zod 추가
시작할 준비가 되셨나요? 여기에서 전체 문서를 확인해 보세요.
GPTyped를 사용하는 것은 간단합니다. 다음은 객체를 프롬프트로 보내고 유형이 안전한 객체 응답을 받는 방법에 대한 예입니다.
import { OpenAiClientBuilder, PrompterForObjectBuilder } from "gptyped"import { z } from "zod"// AI 응답 유형을 설명하는 Zod 스키마export const TweetSchema = z.object({ 트윗: z.string().min(1), 태그: z.array(z.string()).min(3),})type Tweet = z.inferconst gpTypedOpenAiClient = new OpenAiClientBuilder("YOUR_OPEN_AI_SECRET_KEY").build()const PrompterForObject = 새로운 PrompterForObjectBuilder( gpTypedOpenAiClient, TweetSchema, { tweet: "주제에 대한 트윗입니다. 최대 140자입니다.", 태그: "트윗에 대한 해시태그 3개.",}).build()// 입력 개체를 사용하여 OpenAI API에 요청합니다. 응답은 safe.const result = wait PromperForObject.send ({ 유형입니다. 주제: "왜 봄이 가장 좋은 계절인가요?",})// 트윗 유형에 액세스 safe responseconsole.log(result.tweet) // "봄은 꽃과 자연이 있기 때문에 가장 좋은 계절입니다."console.log(result .tags) // ["#봄", "#꽃", "#자연"]
LLM의 응답은 결정적이지 않습니다. 이는 정확히 동일한 프롬프트가 AI의 다른 응답을 초래할 수 있음을 의미합니다. 이를 염두에 두고 응답이 유효한 데이터 구조인지 여부를 보장하는 것은 불가능합니다. GPTyped는 Zod를 사용하여 제공한 스키마에 대해 응답을 검증하고 유효한 경우 응답을 반환합니다. 응답이 유효하지 않으면 GPTyped에서 오류가 발생합니다.
일반적으로 후속 요청은 유효한 응답을 반환하므로 유형 오류가 발생할 때마다 요청을 최소한 두 번 다시 시도하는 것이 좋습니다. OpenAI의 GPT를 사용하면 AI의 온도 매개변수를 낮추어 예측 가능성을 높일 수도 있습니다.
기여를 환영합니다! 버그 수정, 기능 요청 또는 개선 사항에 대한 이슈나 풀 요청을 자유롭게 공개하세요. 즉시 참여할 수 있는 몇 가지 개선 계획을 살펴보십시오.
실패한 요청에 대한 자동 재시도
기타 널리 사용되는 LLM API용 클라이언트
마크다운 요청/응답 지원
CSV 요청/응답 지원
기타 널리 사용되는 데이터 형식 지원
GPTyped는 MIT 라이선스에 따라 출시되는 오픈 소스 소프트웨어입니다. 라이센스 조건에 따라 자유롭게 사용, 수정 및 배포할 수 있습니다.