안녕하세요.
오늘은 간단하게 웹앱을 만들 수 있는 파이썬 라이브러리 gradio에 대해서 알아보겠습니다.
파이썬으로 간단하게 나만의 웹앱 만들기
▣ 파이썬 gradio
머신러닝 모델, 데이터 과학 애플리케이션, 기타 파이썬 함수들을 웹 인터페이스로 쉽게 변환할 수 있게 해주는 라이브러리
- 사용자는 복잡한 프론트엔드에 대한 코드 없이 URL을 통해서 간단한 웹 어플리케이션을 만들 수 있고 이를 통해 모델을 테스트하거나 데모를 공유할 수 있음
- 특히 빠른 프로토타이핑과 간단한 사용자 피드백 수집에 유용함
▣ gradio 설치 및 사용법
- 여타 라이브러리처럼 똑같이 설치해주면 됨
pip install gradio
1) 제곱 계산 웹앱
import gradio as gr
def square(x):
return x ** 2
iface = gr.Interface(fn=square, inputs="number", outputs="number")
iface.launch()
- 위 코드를 실행시 로컬 서버가 실행되고 웹 브라우저에서 접근할 수 있는 인터페이스가 생성됨
- 사용자는 숫자를 입력하고 "Submit" 버튼을 클릭하면 해당 숫자의 제곱을 결과로 확인할 수 있음
2) 텍스트 감정 분석 웹앱
- 텍스트의 감정을 "Positive", "Negative", "Neutral"로 분류해주는 gradio 웹앱 생성
import gradio as gr
from textblob import TextBlob
def analyze_sentiment(text):
blob = TextBlob(text)
sentiment = blob.sentiment.polarity
if sentiment > 0:
return "Positive"
elif sentiment < 0:
return "Negative"
else:
return "Neutral"
iface = gr.Interface(
fn=analyze_sentiment,
inputs="text",
outputs="text",
title="Sentiment Analysis"
)
iface.launch()
- "i love codingfinance" 텍스트 입력시 감정 분석 결과, "Positive"가 출력됨
3) Chatgpt 웹앱 만들기
- Gradio를 사용하여 대형 언어 모델(LLM)과 같은 자연어 처리 모델도 웹 인터페이스로 만들 수 있음
- OpenAI의 GPT API를 사용하여 GPT-3 모델을 탑재한 웹앱 생성 가능
import openai
# OpenAI API 키 설정
openai.api_key = 'YOUR_OPENAI_API_KEY'
import gradio as gr
# OpenAI GPT-4 API 호출 함수
def generate_response(prompt):
response = openai.ChatCompletion.create(
model="gpt-4",
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": prompt}
],
max_tokens=150
)
return response.choices[0].message['content'].strip()
# Gradio 인터페이스 생성
iface = gr.Interface(
fn=generate_response,
inputs="text",
outputs="text",
title="GPT-4 Chatbot",
description="Ask anything and GPT-4 will respond."
)
# 인터페이스 실행
iface.launch()
반응형
'Programming > Python' 카테고리의 다른 글
[Python] Jupyter Notebook warning 메시지 안뜨게 하기 (0) | 2024.09.11 |
---|---|
D2coding 코딩용 폰트 Pycharm에 적용하기 (5) | 2024.09.09 |
[Python] 주식시장 동향 확인하기 (3) | 2024.06.30 |
[Python] 주식 데이터 텔레그램 메시지 보내기 (2) | 2024.06.19 |
[Python] Embedchain 오픈소스 RAG 프레임워크 (4) | 2024.06.03 |
댓글