본문 바로가기
인공지능 (AI,GPT)

OpenAI의 Assistants API 활용한 GPT 모델 사용 예제

by 날으는물고기 2024. 2. 13.

OpenAI의 Assistants API 활용한 GPT 모델 사용 예제

Elevate User Experience By Implementing OpenAI Assistant API

예제를 통한 Assistants API의 사용 방법과 관련 코드를 설명하겠습니다.

OpenAI의 Assistants API 소개

  • Assistants API란?
    • OpenAI에서 제공하는 API 도구로, 개발자들이 AI 기반 애플리케이션을 쉽게 구축할 수 있도록 도와줍니다.
    • GPT 모델을 사용하여 다양한 기능을 구현할 수 있습니다.

Playground 활용

  • Playground 이용:
    • 코드 설치 전에 Playground에서 에이전트를 만들고 테스트할 수 있습니다.
    • 기능 실험, Code Interpreter, Retrieval, File Upload 등이 가능하며, 로그 확인도 할 수 있습니다.

Assistants API의 기본 원리

  1. Assistant 시작:
    • 스레드(사용자와의 대화 또는 세션을 관리하는 단위)를 생성합니다.
    • 사용자의 메시지를 스레드에 추가하고 실행합니다.
  2. 완료 후 처리:
    • 실행 완료 시 Assistant의 메시지가 스레드에 추가됩니다.

파이썬으로 실행하기

  1. 파이썬 SDK 설치 및 업그레이드
    • pip install --upgrade openai
  2. 기본 설정
    • app.py 파일 생성 및 API 키 설정
      from openai import OpenAI
      
      client = OpenAI(api_key="YOUR_OPEN_AI_API_KEY")
  3. 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는 여행 계획과 관련된 제안과 정보를 제공하는 역할을 합니다.
  4. 스레드 생성 및 사용
    • 스레드 만들기
      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?",
      )
    • 여기서는 사용자가 파리 여행 계획에 대한 조언을 구하는 메시지를 추가합니다.
  5. 스레드 실행
    • 실행 요청
      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가 사용자의 요청에 대한 답변을 제공하도록 요청합니다.
  6. Run 상태 확인 및 메시지 확인
    • Run의 상태를 주기적으로 확인하여 'completed' 상태가 되면 다음 단계로 이동합니다.
    • 스레드의 Assistant 메시지를 확인하여 응답을 받습니다.

추가적인 사항

  • 파일 관리: 파일 업로드와 삭제는 file endpoint를 통해 관리할 수 있습니다.
  • 파일 제한: 파일은 최대 20개, 개당 512MB 제한, 조직 당 총 100GB를 관리할 수 있습니다.
  • Retrieval 및 Code Interpreter 비용 정보 제공.
  • 데이터 및 파일 보안: OpenAI에 보내는 데이터 및 파일은 모델 교육에 사용되지 않으며, 필요 시 삭제할 수 있습니다.
  • API Key를 통한 전체 조직 자원 접근 가능.
  • Streaming, notifications, DALL-E 도구, 사용자 메시지에 이미지 첨부 기능 등.

 

이 설명은 Assistants API의 개념, Playground 사용법, 파이썬으로의 구현 방법, 여행 계획 봇 예제, 추가적인 관리 및 비용 정보 등을 포함하여 초보자도 이해할 수 있도록 자세하게 설명합니다. 개발자들은 이 정보를 바탕으로 자신의 AI 애플리케이션을 효과적으로 개발할 수 있을 것입니다.

728x90

댓글