async openai
v0.26.0
OpenAI의 비동기 녹 라이브러리
async-openai OpenAI의 비공식 Rust 라이브러리입니다.
라이브러리는 환경 변수 OPENAI_API_KEY 에서 API 키를 읽습니다.
# On macOS/Linux
export OPENAI_API_KEY= ' sk-... ' # On Windows Powershell
$ Env: OPENAI_API_KEY = ' sk-... 'async-openai 사용 방법에 대한 예제 디렉토리를 방문하십시오. 실시간 API의 유형 만 구현되며 기능 플래그 realtime 으로 활성화 할 수 있습니다. 이러한 유형은 OpenAI가 공식 사양을 출시 한 경우 변경 될 수 있습니다.
use async_openai :: {
types :: { CreateImageRequestArgs , ImageSize , ImageResponseFormat } ,
Client ,
} ;
use std :: error :: Error ;
# [ tokio :: main ]
async fn main ( ) -> Result < ( ) , Box < dyn Error > > {
// create client, reads OPENAI_API_KEY environment variable for API key.
let client = Client :: new ( ) ;
let request = CreateImageRequestArgs :: default ( )
. prompt ( "cats on sofa and carpet in living room" )
. n ( 2 )
. response_format ( ImageResponseFormat :: Url )
. size ( ImageSize :: S256x256 )
. user ( "async-openai" )
. build ( ) ? ;
let response = client . images ( ) . create ( request ) . await ? ;
// Download and save images to ./data directory.
// Each url is downloaded and saved in dedicated Tokio task.
// Directory is created if it doesn't exist.
let paths = response . save ( "./data" ) . await ? ;
paths
. iter ( )
. for_each ( |path| println ! ( "Image file path: {}" , path.display ( ) ) ) ;
Ok ( ( ) )
}프로젝트에 기여하고 개선하기 위해 시간을내어 주셔서 감사합니다. 나는 당신을 갖게되어 기쁩니다!
새로운 기능 요청, 버그 수정, 문제, 문서, 테스트, 의견, 예제 등과 같은 모든 형태의 기여도를 환영합니다.
좋은 출발점은 기존의 열린 문제를 보는 것입니다.
프로젝트의 품질을 유지하려면 다음 중 최소 값은 코드 기여를위한 필수입니다.
이 프로젝트는 녹 행동 강령을 준수합니다
이 프로젝트는 MIT 라이센스에 따라 라이센스가 부여됩니다.