# https://chat.lmsys.org/?leaderboard import langchain import transformers # https://huggingface.co/spaces/joyson072/LLm-Langchain/blob/main/app.py from langchain.llms import HuggingFaceHub # for the chain and prompt from langchain.prompts import PromptTemplate from langchain.llms import HuggingFaceHub from langchain.chains import LLMChain #import model class and tokenizer from transformers import BlenderbotTokenizer, BlenderbotForConditionalGeneration #import model class and tokenizer from transformers import BlenderbotTokenizer, BlenderbotForConditionalGeneration #### ## Sentinent models # https://huggingface.co/spaces/CK42/sentiment-model-comparison # 1, 4 seem best for german #### model_id_1 = "nlptown/bert-base-multilingual-uncased-sentiment" model_id_2 = "microsoft/deberta-xlarge-mnli" model_id_3 = "distilbert-base-uncased-finetuned-sst-2-english" model_id_4 = "lordtt13/emo-mobilebert" model_id_5 = "juliensimon/reviews-sentiment-analysis" model_id_6 = "sbcBI/sentiment_analysis_model" #### ## Chat models # https://huggingface.co/spaces/CK42/sentiment-model-comparison # 1 seem best for testing #### #download and setup the model and tokenizer model_name = 'facebook/blenderbot-400M-distill' tokenizer = BlenderbotTokenizer.from_pretrained(model_name) model = BlenderbotForConditionalGeneration.from_pretrained(model_name) chat_model_facebook_blenderbot_400M_distill = "facebook/blenderbot-400M-distill" chat_model_HenryJJ_vincua_13b = "HenryJJ/vincua-13b" # https://colab.research.google.com/drive/1hrS6_g14EcOD4ezwSGlGX2zxJegX5uNX#scrollTo=NUwUR9U7qkld llm_hf = HuggingFaceHub( repo_id= model, model_kwargs={"temperature":0.9 } ) text = "Why did the chicken cross the road?" output_question_1 = llm_hf(text) print(output_question_1) ### ## FACT EXTRACTION ### fact_extraction_prompt = PromptTemplate( input_variables=["text_input"], template="Extract the key facts out of this text. Don't include opinions. Give each fact a number and keep them short sentences. :\n\n {text_input}" ) fact_extraction_chain = LLMChain(llm=llm_hf, prompt=fact_extraction_prompt) facts = fact_extraction_chain.run(text + " " +output_question_1) print(facts) def func (message): inputs = tokenizer(message, return_tensors="pt") result = model.generate(**inputs) return tokenizer.decode(result[0]) import gradio as gr app = gr.Interface(fn=func, inputs="textbox", outputs="textbox", title="Conversation Bot") app.launch()