인공지능 (AI,GPT)
OpenAI의 Assistants API 활용한 GPT 모델 사용 예제
날으는물고기
2024. 2. 13. 00:57
예제를 통한 Assistants API의 사용 방법과 관련 코드를 설명하겠습니다.
OpenAI의 Assistants API 소개
- Assistants API란?
- OpenAI에서 제공하는 API 도구로, 개발자들이 AI 기반 애플리케이션을 쉽게 구축할 수 있도록 도와줍니다.
- GPT 모델을 사용하여 다양한 기능을 구현할 수 있습니다.
Playground 활용
- Playground 이용:
- 코드 설치 전에 Playground에서 에이전트를 만들고 테스트할 수 있습니다.
- 기능 실험, Code Interpreter, Retrieval, File Upload 등이 가능하며, 로그 확인도 할 수 있습니다.
Assistants API의 기본 원리
- Assistant 시작:
- 스레드(사용자와의 대화 또는 세션을 관리하는 단위)를 생성합니다.
- 사용자의 메시지를 스레드에 추가하고 실행합니다.
- 완료 후 처리:
- 실행 완료 시 Assistant의 메시지가 스레드에 추가됩니다.
파이썬으로 실행하기
- 파이썬 SDK 설치 및 업그레이드
pip install --upgrade openai
- 기본 설정
app.py
파일 생성 및 API 키 설정from openai import OpenAI client = OpenAI(api_key="YOUR_OPEN_AI_API_KEY")
- Assistant 만들기 (여행 계획 봇 예제)
- 여행 계획 봇 생성
assistant = client.beta.assistants.create( name="Travel Planner", instructions="You are a travel planner. Provide travel suggestions and information.", tools=[{"type": "retrieval"}], model="gpt-4-1106-preview" ) print(assistant)
- 이 코드는 'Travel Planner'라는 이름의 Assistant를 생성합니다. 이 Assistant는 여행 계획과 관련된 제안과 정보를 제공하는 역할을 합니다.
- 여행 계획 봇 생성
- 스레드 생성 및 사용
- 스레드 만들기
thread = client.beta.threads.create()
- 메시지 추가
message = client.beta.threads.messages.create( thread_id=thread.id, role="user", content="I'm planning a trip to Paris. What are some must-visit places and local food recommendations?", )
- 여기서는 사용자가 파리 여행 계획에 대한 조언을 구하는 메시지를 추가합니다.
- 스레드 만들기
- 스레드 실행
- 실행 요청
run = client.beta.threads.runs.create( thread_id=thread.id, assistant_id=assistant.id, instructions="Provide detailed travel suggestions including landmarks and local cuisine.", )
- 이 단계에서는 스레드를 실행하여 Assistant가 사용자의 요청에 대한 답변을 제공하도록 요청합니다.
- 실행 요청
- Run 상태 확인 및 메시지 확인
- Run의 상태를 주기적으로 확인하여 'completed' 상태가 되면 다음 단계로 이동합니다.
- 스레드의 Assistant 메시지를 확인하여 응답을 받습니다.
추가적인 사항
- 파일 관리: 파일 업로드와 삭제는 file endpoint를 통해 관리할 수 있습니다.
- 파일 제한: 파일은 최대 20개, 개당 512MB 제한, 조직 당 총 100GB를 관리할 수 있습니다.
- Retrieval 및 Code Interpreter 비용 정보 제공.
- 데이터 및 파일 보안: OpenAI에 보내는 데이터 및 파일은 모델 교육에 사용되지 않으며, 필요 시 삭제할 수 있습니다.
- API Key를 통한 전체 조직 자원 접근 가능.
- Streaming, notifications, DALL-E 도구, 사용자 메시지에 이미지 첨부 기능 등.
이 설명은 Assistants API의 개념, Playground 사용법, 파이썬으로의 구현 방법, 여행 계획 봇 예제, 추가적인 관리 및 비용 정보 등을 포함하여 초보자도 이해할 수 있도록 자세하게 설명합니다. 개발자들은 이 정보를 바탕으로 자신의 AI 애플리케이션을 효과적으로 개발할 수 있을 것입니다.
728x90