Open AI 어시스턴트 와 설정 및 스레드

Hansu·2025년 7월 15일
post-thumbnail

OpenAI 어시스턴트 기능이 무엇일까?

OpenAI 어시스턴트 기능은 개발자가 사용자 지정 가능한 AI 어시스턴트를 만들 수 있도록 하는 API(응용 프로그래밍 인터페이스)입니다. 이 기능은 복잡한 대화형 AI 애플리케이션을 더 쉽게 구축할 수 있도록 설계되었습니다.

  • 지속적인 대화 스레드(Persistent Threads): 어시스턴트와 사용자 간의 대화 기록을 자동으로 관리하고 유지합니다. 이는 컨텍스트를 유지하고 긴 대화에서도 일관된 응답을 제공하는 데 도움이 됩니다.

다양한 도구 활용 (Tool Utilization):

  • 코드 인터프리터 (Code Interpreter): 어시스턴트가 실시간으로 코드를 분석하고, 생성하고, 실행할 수 있도록 합니다. 데이터 분석, 수학 문제 해결 등에 유용합니다.

  • 파일 검색 (File Search/Retrieval): 업로드된 문서나 지식 베이스에서 관련 정보를 검색하고 활용할 수 있습니다. 예를 들어, 기업 내부 문서에서 질문에 대한 답을 찾거나 고객 지원을 제공하는 데 사용될 수 있습니다.

  • 함수 호출 (Function Calling): 어시스턴트가 외부 도구 또는 자체 API와 상호 작용할 수 있도록 합니다. 이를 통해 날씨 데이터 가져오기, 이메일 보내기, 데이터베이스 쿼리 실행 등과 같은 특정 작업을 수행할 수 있습니다.

  • 사용자 지정 지침 (Custom Instructions): 어시스턴트의 성격, 응답 방식, 특정 작업 수행 방법 등을 상세하게 정의할 수 있습니다.

  • 파일 업로드 및 생성 (File Uploads and Creation): 어시스턴트 생성 시 또는 대화 중에 파일을 업로드할 수 있으며, 어시스턴트가 응답의 일부로 파일(예: 이미지, 스프레드시트)을 생성할 수도 있습니다.

  • 모델 선택 (Model Selection): 어시스턴트가 사용할 OpenAI 모델을 선택하여 특정 작업에 최적화된 성능을 제공할 수 있습니다.

  • 병렬 도구 실행 (Parallel Tool Execution): 복잡한 다단계 작업을 위해 여러 도구를 동시에 활용할 수 있어 성능을 최적화합니다.

어시스턴트 생성 및 이력서 파일 업로드

어시스턴트 기능을 활용하여 메세지 응답 및 프론트엔드에서 출력하기

스레드

Open AI에서 지원하는 공식 스레드 이미지

객체 이름설명
Assistant (어시스턴트)OpenAI의 모델과 도구를 사용하여 특정 목적을 수행하는 AI. 구성 정보(사용할 모델, 도구 등)를 포함.
Thread (스레드)사용자와 어시스턴트 간의 대화 세션. 여러 개의 메시지를 저장하고, 대화 기록을 유지. 모델의 컨텍스트 크기에 맞게 자동으로 메시지를 관리(잘림 처리 포함).
Message (메시지)사용자 또는 어시스턴트가 생성한 대화 내용. 텍스트, 이미지, 파일 등을 포함할 수 있으며, Thread에 순서대로 저장됨.
Run (실행)어시스턴트가 Thread의 메시지를 바탕으로 작업을 수행하는 실행 단위. Run 중에 모델 호출 및 도구 실행을 통해 결과를 생성하고 메시지를 추가함.
Run Step (실행 단계)Run 내에서 어시스턴트가 수행한 세부 작업들. 도구 호출, 메시지 생성 등 모든 단계를 기록하며, 실행 과정 확인 및 디버깅에 사용됨.
  • 하나의 스레드가 대화의 문맥 흐름을 가지고 있는다.
  • 생성형으로 응답하는 경우 유저별로 별도의 스레드를 관리하여 주는게 서비스 사용성 측면에서 더 좋다.
  • 단순 응답형은 굳이 스레드를 별도 관리 해줄 필요가 없다.(굳이 매번 생성할 필요도 없다)
  • 스레드를 재사용하면 경제적 측면에서 장점이 있지만 업데이트를 바로 하지는 못한다.
profile
humble

0개의 댓글