티스토리 뷰

반응형

🚀 FastAPI 기반 로컬 LLM + RAG 챗봇 만들기 – 2.2.1 FastAPI에서 Ollama API 호출 개요

이번 글에서는 FastAPI와 Ollama를 연동하는 개념과 방식을 살펴봅니다.
Ollama API 개념 → FastAPI와 Ollama의 연동 방식 → Ollama API 활용 가능성 순서로 설명합니다.


📌 1. Ollama API란?

Ollama 개요

Ollama로컬에서 LLM(대형 언어 모델, Large Language Model)을 실행할 수 있도록 지원하는 프레임워크입니다.
이를 통해 클라우드 의존도를 줄이고, 로컬 환경에서 AI 모델을 쉽게 배포 및 실행할 수 있습니다.

Ollama의 주요 기능:

  • 로컬 LLM 실행 → 인터넷 없이도 AI 모델 사용 가능
  • 다양한 모델 지원 → LLaMA3, Mistral, DeepSeek, Phi 등 다양한 모델 실행 가능
  • 간단한 명령어 실행 → ollama pull <모델> 및 ollama run <모델>로 실행 가능
  • 컨테이너 기반 경량화 → GPU 또는 CPU 환경에서도 실행 가능

💡 Ollama를 활용하면 로컬 PC에서 LLaMA3 기반 챗봇을 구축할 수 있습니다! 🚀


📌 2. FastAPI와 Ollama API 연동 방식

반응형

FastAPI에서 Ollama를 호출하려면 Ollama의 HTTP API를 사용하여 요청을 주고받는 방식을 사용합니다.

Ollama 서버 실행

ollama serve
  • 이 명령어를 실행하면 **http://localhost:11434**에서 Ollama API가 동작합니다.
  • FastAPI는 Ollama API에 요청을 보내고 응답을 받아 사용자에게 반환합니다.

FastAPI와 Ollama의 연동 구조

📌 FastAPI와 Ollama가 데이터를 주고받는 흐름은 다음과 같습니다.

사용자 → (1) FastAPI → (2) Ollama API → (3) FastAPI 응답 → (4) 사용자에게 결과 반환

1️⃣ 사용자 → FastAPI에 POST /chat/ 요청을 보냄
2️⃣ FastAPI → Ollama API(http://localhost:11434/api/generate)에 요청 전달
3️⃣ Ollama → 프롬프트를 받아 LLM이 응답 생성
4️⃣ FastAPI → Ollama의 응답을 사용자에게 반환

💡 이 방식을 사용하면 FastAPI가 Ollama의 프록시 역할을 하며, 챗봇 기능을 확장할 수 있습니다!


📌 3. Ollama API 호출 방식

Ollama API는 HTTP POST 요청을 사용하여 모델과 상호작용합니다.
FastAPI는 이 API를 호출하여 프롬프트를 전달하고, Ollama가 생성한 응답을 반환받습니다.

1️⃣ Ollama API 기본 요청 형식

POST http://localhost:11434/api/generate
Content-Type: application/json

{
    "model": "korean-llama3",
    "prompt": "안녕하세요! 오늘 날씨는 어떤가요?",
    "stream": false
}

2️⃣ Ollama API 응답 형식

{
    "response": "안녕하세요! 오늘 날씨는 맑고 따뜻합니다.",
    "done": true
}

💡 FastAPI에서는 requests 라이브러리를 사용하여 Ollama API를 호출합니다.


📌 4. Ollama API 활용 가능성

FastAPI와 Ollama API를 활용하면 다양한 LLM 기반 애플리케이션을 구축할 수 있습니다.

가능한 활용 사례:

  • RAG (Retrieval-Augmented Generation) 챗봇 → 벡터 DB(pgvector)와 연동하여 대화 생성
  • 문서 요약 시스템 → PDF, TXT 문서를 요약하는 기능
  • 프로그래밍 코드 해석기 → 코드 입력 시 자동으로 설명 제공
  • 음성 비서 → 음성을 텍스트로 변환하여 Ollama API로 대화 처리

📌 5. 결론 및 다음 단계

FastAPI와 Ollama API의 연동 방식 이해 완료!
Ollama API의 HTTP 요청 및 응답 형식 학습 완료!
FastAPI가 Ollama의 프록시 역할을 하여 AI 챗봇 구축 가능성 확인!

🚀 다음 글에서는 "2.2.2 FastAPI에서 Ollama API 호출 구현"을 작성합니다!

 

반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/03   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
글 보관함
반응형