API | OpenAI

OpenAI Realtime API는 음성 대 음성 대화 경험 및 실시간 전사를 포함한 저지연 멀티모달 상호 작용을 가능하게 합니다.

 

TsgcWSAPI_OpenAI 구성 요소는 RealTime OpenAI API를 구현합니다.

 

구성

Conversation 또는 Transcription을 선택하려면 method 속성 을 사용하십시오. 현재 Transcription 모드만 지원됩니다.

 

InputAudio 속성을 사용하면 다음 데이터를 사용자 정의할 수 있습니다:

 

 

OpenAI

 

OpenAI API는 인증을 위해 API 키를 사용합니다. 요청에서 사용할 API 키를 검색하려면 API Keys 페이지를 방문하십시오.

API 키는 비밀이라는 점을 기억하십시오! 다른 사람과 공유하거나 클라이언트 측 코드(브라우저, 앱)에 노출하지 마십시오. 프로덕션 요청은 API 키를 환경 변수 또는 키 관리 서비스에서 안전하게 로드할 수 있는 자체 백엔드 서버를 통해 라우팅해야 합니다.

 

API Key는 구성 요소의 OpenAIOptions.ApiKey 속성에 구성되어야 합니다. 선택적으로, 여러 조직에 속한 사용자의 경우 계정이 조직에 속해 있으면 OpenAIOptions.Organization 속성에 Organization을 설정할 수 있습니다.

 

API Key가 구성되면, OpenAI API와 상호작용하기 위해 사용 가능한 함수 목록을 아래에서 확인하십시오.

 

Azure

 

클라이언트는 Microsoft Azure OpenAI Services를 지원하므로 Azure 계정을 사용하여 Azure OpenAI API와 상호 작용할 수도 있습니다. 클라이언트를 Azure에서 작동하도록 구성하려면 다음 단계를 따르십시오:

 

  1. 속성 OpenAIOptions.Provider = oapvAzure를 구성하십시오
  2. ResourceName과 DeploymentId의 값을 설정하십시오(이 값은 Azure Account에서 찾을 수 있습니다).
    1. OpenAIOptions.AzureOptions.ResourceName = <your resource name>.
    2. OpenAIOptions.AzureOptions.DeploymentId = <your deployment id>.
  3. Azure 계정의 API Key를 설정하십시오
    1. OpenAIOptions.ApiKey = <azure api key>.

 

전사 예제

아래에서 openAI API를 사용한 실시간 전사 예제를 찾을 수 있습니다

 


WSClient := TsgcWebSocketClient.Create(nil);
oAudio := TsgcAudioRecorderWave.Create(nil);
OpenAI := TsgcWSAPI_OpenAI.Create(nil);

OpenAI.Client := WSClient;
OpenAI.AudioRecorder := oAudio;
OpenAI.OpenAIOptions.APIKey := 'your-api-key-here';
OpenAI.OpenAIOptions.method := sgcoaimTranscription;
OpenAI.OpenAIOptions.provider := sgcoaipOpenAI;
OpenAI.InputAudio.Language := 'en';
OpenAI.InputAudio.Model := 'whisper-1';

procedure OnOpenAIAudioTranscriptionCompleted(Sender: TObject; const aItem: TsgcWSOpenAIConversation_Item_Completed);
begin
  Log('#transcription_completed: ' + aItem.Transcript);
end;