섹션 6: Project 1 - Building LLM Application using ChatGPT

쌀과자AI·2025년 8월 26일

📌 강의 요약 – Project 1: Building AI Assistant with ChatGPT

1. 프로젝트 개요

  • 본 섹션은 ChatGPT를 활용하여 AI Assistant(챗봇)를 구축하는 실습 프로젝트입니다.
  • 목표: 사용자 맞춤형 데이터 기반 AI 챗봇 구현.
  • 활용 모델: OpenAI의 GPT 계열 모델 (예: GPT-4 Turbo).
  • 접근 방식: OpenAI Playground와 Python을 이용한 프로그래밍 방식 구현 .

2. 사전 준비 (Pre-requisites)

  • OpenAI 계정 생성Billing 설정(최소 $5 충전 필요) .
  • API Key 생성: “Create new secret key”를 통해 발급 → 한 번만 표시되므로 별도 저장 필요 .

3. OpenAI Playground 소개

  • 사용자 친화적 인터페이스로 ChatGPT와 상호작용 가능.
  • 기능:
    • 모델 및 메시지 커스터마이징
    • 다양한 사용 사례(use cases) 지원
    • Assistants API를 Playground 내에서 바로 사용 가능 .

4. Assistants API 개요

  • 역할: 애플리케이션 내부에 AI Assistant를 생성할 수 있는 API.
  • 특징
    • Assistant는 명령어(instructions)를 가질 수 있음.
    • 모델, 외부 도구, 사용자 지식 파일을 활용 가능.
  • 지원 도구
    1. Code Interpreter – Python 코드 실행, 데이터 처리 및 시각화.
    2. Retrieval – 외부 문서(예: story.txt) 검색 및 답변 .
    3. Function Calling – 정의된 함수 호출 가능 .

5. Assistant 통합 절차

  1. Assistant 생성: 이름, instruction, 모델, 도구 선택.
  2. Conversation 시작: Thread 생성.
  3. 사용자 입력: Thread에 메시지 추가.
  4. Assistant 실행: Thread 기반으로 응답 생성, 필요시 자동 도구 호출 .

6. Hands-on 실습

  • Playground 활용
    • 예시: story.txt 파일 업로드 후 “이 이야기의 주인공은 누구인가?” 질문 → Retrieval 기능을 통해 문서 기반 답변 제공 .
    • 출력: Dr. Michael Greene (발명가, Lumina 디바이스 창시자) .
  • Python 코드 기반 구현
    • OpenAI 라이브러리 설치 (pip install openai) .
    • API Key 인증 후 Assistant 객체 생성.
    • 파일 업로드(story.txt) → file ID 발급.
    • Assistant에 파일 연결 후 Thread 생성.
    • 메시지 전송 및 Assistant Run 실행 → 응답 수신 .

7. 핵심 요약

  • Assistants API = 맞춤형 AI 챗봇 개발 핵심 도구
  • 세 가지 주요 도구(Code Interpreter, Retrieval, Function Calling)를 활용하여 확장성 높은 AI Assistant 구현 가능.
  • Playground + Python API 병행 실습을 통해 이론과 실무를 연결.
  • Retrieval을 통해 외부 지식 문서 기반 질의응답 시스템을 쉽게 구축할 수 있음 .

핵심 포인트 강조

  • OpenAI API Key 발급과 Billing 설정이 필수.
  • Playground는 시각적 실습, Python API는 실제 응용 프로그램 개발에 적합.
  • Retrieval을 활용하면 사용자 문서 기반 맞춤형 AI Assistant 구축이 가능하다.

📘 AI Assistant 구축 (ChatGPT & Assistants API) – 연습문제

난이도: 하

문제 1. (객관식)

다음 중 OpenAI Assistants API의 지원 도구에 해당하지 않는 것은 무엇인가?

① Code Interpreter

② Retrieval

③ Function Calling

④ Auto Scaling

✅ 정답: ④

💡 해설: Assistants API는 Code Interpreter, Retrieval, Function Calling 세 가지 도구를 지원합니다. Auto Scaling은 클라우드 인프라 개념이지 API 지원 기능이 아닙니다 .


문제 2. (객관식)

OpenAI API를 사용하기 위해 필수적으로 수행해야 하는 사전 준비(Prerequisite) 사항으로 올바른 것은?

① AWS IAM Role 생성

② OpenAI 계정 및 Billing 설정

③ Python 가상환경 생성

④ Dockerfile 작성

✅ 정답: ②

💡 해설: OpenAI API 사용을 위해서는 OpenAI 계정 생성 및 최소 $5 충전, API Key 발급이 필요합니다 .


난이도: 중

문제 3. (주관식)

Assistants API를 활용하여 외부 문서 기반으로 질의응답을 가능하게 하는 기능을 무엇이라고 하는가?

✅ 정답: Retrieval

💡 해설: Retrieval 기능은 사용자가 업로드한 파일을 벡터화 후 검색(indexing & vector search) 하여, 사용자 질문에 관련 문서 내용을 기반으로 답변할 수 있도록 합니다 .


문제 4. (객관식)

다음 중 OpenAI Playground의 특징에 대한 설명으로 옳은 것은?

① 단순히 모델 응답을 확인할 수만 있고, Assistant를 생성할 수 없다.

② 사용자 맞춤 instruction을 설정할 수 있다.

③ Retrieval 기능을 제공하지 않는다.

④ 학습 데이터를 직접 재훈련(fine-tuning)해야만 사용 가능하다.

✅ 정답: ②

💡 해설: OpenAI Playground는 Assistant 생성, instruction 설정, Retrieval/Function Calling/Code Interpreter 활성화 등이 가능합니다 .


난이도: 상

문제 5. (서술형)

Python을 이용하여 Assistants API를 프로그래밍 방식으로 사용할 때, Assistant 실행(Assistant Run) 절차를 단계별로 서술하시오.

✅ 모범답안:

  1. Assistant 객체 생성 (이름, instruction, 모델, 도구 지정)
  2. Thread 생성 (사용자 대화 흐름 관리)
  3. Thread에 메시지 추가 (사용자 입력)
  4. Run 실행 → Assistant가 Thread를 읽고 필요한 도구(Code Interpreter, Retrieval, Function Calling)를 호출
  5. Assistant 응답을 수신 (Thread 내 메시지로 반환)

💡 해설: Playground UI와 동일한 구조를 코드로 구현하며, Thread와 Run 개념을 이해하는 것이 핵심입니다.


profile
AI에 관심이 많은 23살 대학생입니다.

0개의 댓글