[개발이야기#046] 인공지능 이야기 윈도우에서 Ollama 사용해보기 with Python
안녕하세요 가야태자 @talkit 입니다.
오늘은 오랫만에 다시 인공지능에 대해서 이야기 좀 해보겠습니다.
관련글
[AI] 무료 사용 가능한 LLM API 서비스 — Steemit - @anpigon
[개발이야기#045] 인공지능 이야기 윈도우에서 Ollama 사용해보기 — Steemit
1. 올라마 서버 실행하기
앞에서는 올라마를 다운로드하고 올라마 자체 프로그램으로 질문을 던지고 받아 봤습니다.
그러면, 오늘은 개발자 답게 프로그램으로 해보겠습니다.
프로그램으로 진행하기 위해서는 올라마를 서버 상태로 띄워야 합니다.
ollama serve
간단하네요 ^^
지금 llama3.1 모델도 설치하고 있습니다.
2. 파이썬 소스코드
import requests
import json
# Ollama API URL 설정
api_url = "http://localhost:11434/api/generate"
# 요청 데이터 설정
data = {
"model": "llama3.1",
"prompt": "올리마가 한국어를 사용할 수 있는지 알려 주세요."
}
try:
# API 요청 보내기 (스트림 활성화)
response = requests.post(api_url, json=data, stream=True)
response.raise_for_status() # HTTP 오류 발생 시 예외 발생
# 응답 텍스트 읽기
full_response = ""
for line in response.iter_lines():
if line:
# JSON으로 변환
json_line = json.loads(line.decode('utf-8'))
# `response` 키의 텍스트 부분 추출
if 'response' in json_line:
full_response += json_line['response']
# 완료 여부 확인
if json_line.get('done', False):
break
print("모델의 전체 응답:", full_response)
except requests.exceptions.HTTPError as http_err:
print(f"HTTP 오류 발생: {http_err}")
except requests.exceptions.JSONDecodeError:
print("JSON 형식이 아닌 응답을 수신했습니다:", response.text)
except Exception as err:
print(f"기타 오류 발생: {err}")
3. 실행
파이썬 코드를 ollama_test.py
로 저장 합니다.
지난 번글에서 질문했던 내용을 동일하게 질문을 해보겠습니다. ^^
conda activate steemit
스팀잇 가상환경으로 실행 합니다.
왜냐면 나중에 ^^ 스팀잇글을 요약해서 다른 곳으로 던저 보려고 합니다. ^^
python ollama_test.py
(steemit) C:\dev\pythonWorkspace\steemit>python ollama_test.py
모델의 전체 응답: 올리마(OLIM) 은 영어, 일본어, 중국어 등을 언어로 지원하는 대화형 가상인간 AI입니다.
하지만, 올리마는 기본적으로 미국의 언어로서 English만 표기하여 제공하고 있습니다.
그러나 사용자가 직접 번역기를 통해 한국어를 올리마와 대화할 수 있습니다.
모델이 부끄러운 걸까요? 한국어를 잘만 하는데 왜 한국어를 못한다고 하죠 T.T
TIP. 올라마 서버를 실행할때 실행이 안되시면, 프로세스 리스트에서 올라마를 종료해주십시오.
4.결론
올라마의 llama2 모델은 한국어를 하는데 영어로 답변 합니다. ^^
올라마의 llama3.1 모델은 한국어를 곧잘 하고 답변도 한국어로 합니다.
그리고, 격하게 MacOS나 Nvidia Graphic 카드가 가지고 싶습니다. T.T
오늘은 여기까지 입니다.
그리고, 제가 질문을 잘 못 하고 있었네요 T.T
그래서 llama2와 llama3.1 로 변경해서 해봤는데도 잘 모르겠으니 문서를 참조하라고 답변 하네요 ^^
다른 시도를 하고 있었는데 다음에는 그걸 보여 드리고,
다시 올라마로 돌아오겠습니다.
감사합니다.
Posted through the ECblog app (https://blog.etain.club)
[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.