File size: 1,417 Bytes
f4ec833 49e706c f4ec833 2111d8c 49e706c f4ec833 2111d8c 49e706c f4ec833 2111d8c 49e706c f4ec833 2111d8c 49e706c f4ec833 49e706c 2111d8c 49e706c f4ec833 2111d8c 49e706c f4ec833 2111d8c 49e706c f4ec833 2111d8c 49e706c f4ec833 2111d8c f4ec833 49e706c f4ec833 2111d8c |
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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 |
import gradio as gr
from langchain.llms import HuggingFacePipeline
from langchain import LLMChain, PromptTemplate
from langchain.memory import ConversationBufferMemory
from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
# Load model and tokenizer
model_name = "microsoft/DialoGPT-medium"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(model_name)
# Create HF pipeline
pipe = pipeline("text-generation", model=model, tokenizer=tokenizer, max_length=1000, do_sample=True)
# Wrap with HuggingFacePipeline for LangChain
llm = HuggingFacePipeline(pipeline=pipe)
# Prompt Template
template = """You are a helpful assistant to answer user queries.
{chat_history}
User: {user_message}
Chatbot:"""
prompt = PromptTemplate(
input_variables=["chat_history", "user_message"],
template=template
)
# Memory
memory = ConversationBufferMemory(memory_key="chat_history")
# LLM Chain
llm_chain = LLMChain(
llm=llm,
prompt=prompt,
memory=memory,
)
# Response function
def get_text_response(user_message, history):
response = llm_chain.predict(user_message=user_message)
return response
# Gradio Chat Interface
demo = gr.ChatInterface(
get_text_response,
examples=["How are you doing?", "What are your interests?", "Which places do you like to visit?"]
)
# Launch the app (no share=True needed for Spaces)
demo.launch()
|