반응형
AI 학습을 위한 가장 좋은 방법은 직접 만들어보고 경험해 보는 것입니다. 📈 AI와 데이터 과학에 관심이 있다면, 복잡한 튜토리얼보다 실제 프로젝트를 통해 더 많은 성장을 이룰 수 있어요. 이번에는 주말 동안 완료할 수 있는 흥미로운 프로젝트, 바로 '감정 분석 봇'을 만들어 봅시다. 🤖✨
이 프로젝트를 통해 파이썬과 Claude API를 사용하여 텍스트 데이터를 분석하고, 그 감정을 긍정, 부정, 중립으로 분류하는 간단한 감정 분석기를 구축해볼 거예요. 💬 데이터 분석과 시각화를 결합해보는 좋은 기회가 될 것입니다!
프로젝트 목표: 감정 분석 봇 만들기 (초급)
사용자들이 다양한 주제에 대해 어떻게 생각하고 있는지 알 수 있다면 좋겠죠? 리뷰, 피드백 등 여러 텍스트 데이터를 실시간으로 수집하여 감정을 분석하는 이 프로젝트는 초보자에게도 적합합니다. Python과 Claude API를 이용해 간단하지만 강력한 감정 분석 봇을 직접 만들어 보세요. 😊
진행 방법:
- API 설정하기: Anthropic API 키를 활용해 Claude API를 설정합니다.
- 텍스트 데이터 수집: 분석할 텍스트 데이터를 준비합니다.
- 감정 분석 수행: Claude API를 통해 데이터를 분석하고 감정을 분류합니다.
- 결과 시각화: matplotlib을 사용하여 결과를 보기 좋게 시각화합니다.
예시 코드:
from anthropic import Anthropic
import matplotlib.pyplot as plt
from collections import defaultdict
import json
def analyze_text_sentiment(text, anthropic):
"""
Claude API를 사용하여 텍스트의 감정을 분석합니다.
"""
prompt = f"""다음 텍스트의 감정을 'positive', 'negative', 'neutral' 중 하나로 분류해주세요.
응답은 감정 레이블만 반환해주세요.
텍스트: "{text}"
"""
response = anthropic.messages.create(
model="claude-3-sonnet-20240229",
max_tokens=1000,
temperature=0,
system="감정 분석을 수행하는 assistant입니다. 텍스트를 분석하여 positive, negative, neutral 중 하나로 분류합니다.",
messages=[
{"role": "user", "content": prompt}
]
)
return response.content
def analyze_multiple_texts(texts, api_key):
"""
여러 텍스트의 감정을 분석하고 결과를 요약합니다.
"""
anthropic = Anthropic(api_key=api_key)
sentiments = defaultdict(int)
for text in texts:
try:
sentiment = analyze_text_sentiment(text, anthropic)
sentiments[sentiment.lower()] += 1
except Exception as e:
print(f"텍스트 분석 오류: {e}")
return dict(sentiments)
def visualize_sentiments(sentiments, title="감정 분석 결과"):
"""
감정 분석 결과를 파이 차트로 시각화합니다.
"""
labels = sentiments.keys()
sizes = sentiments.values()
plt.figure(figsize=(10, 8))
plt.pie(sizes, labels=labels, autopct='%1.1f%%', startangle=90)
plt.title(title)
plt.axis('equal')
return plt
def main():
# API 키 설정
ANTHROPIC_API_KEY = 'your_api_key_here'
# 분석할 텍스트 샘플
sample_texts = [
"이 제품은 정말 훌륭합니다! 매우 만족스럽습니다.",
"서비스가 너무 실망스러웠습니다.",
"일반적인 제품입니다.",
"뛰어난 품질과 합리적인 가격!",
"배송이 늦어서 아쉽네요."
]
# 감정 분석 수행
sentiments = analyze_multiple_texts(sample_texts, ANTHROPIC_API_KEY)
# 결과 시각화
plt = visualize_sentiments(sentiments)
plt.show()
# 결과 출력
print("\n감정 분석 결과:")
print(json.dumps(sentiments, indent=2, ensure_ascii=False))
if __name__ == "__main__":
main()
이렇게 Claude API를 사용해 감정 분석을 수행하면 복잡한 과정 없이도 효과적인 결과를 얻을 수 있습니다. 이 프로젝트를 통해 실력을 키우고, AI의 매력을 느껴보세요! 🌟
반응형
'AI 공부 > LLM' 카테고리의 다른 글
OpenAI의 멀티 에이전트 프레임워크, Swarm 🐝 소개 (1) | 2024.12.11 |
---|---|
[LLM] 🚀 RAG 앱 개발이란? 🔍 (3) | 2024.11.21 |
[LLM] 허깅페이스란? Hugging Face? (6) | 2024.11.05 |
[LLM] 🚀 Claude 3.5로 문서 처리를 빠르고 쉽게! 📝 (3) | 2024.11.03 |
[LLM] 🦙 Llama 3.2: Meta의 새로운 멀티모달 AI 모델 (5) | 2024.10.25 |