import os from langchain.chains import LLMChain from langchain_core.prompts import ( ChatPromptTemplate, HumanMessagePromptTemplate, MessagesPlaceholder, ) from langchain_core.messages import SystemMessage from langchain.chains.conversation.memory import ConversationBufferWindowMemory from langchain_groq import ChatGroq def prompt_genalate(word): # Get Groq API key groq_api_key = os.getenv("api_key") groq_chat = ChatGroq(groq_api_key=groq_api_key, model_name="llama3-70b-8192") system_prompt = "あなたはプロンプト作成の優秀なアシスタントです。答えは日本語で答えます" conversational_memory_length = 50 memory = ConversationBufferWindowMemory( k=conversational_memory_length, memory_key="chat_history", return_messages=True ) #while True: user_question = word#input("質問を入力してください: ") #if user_question.lower() == "exit": # print("Goodbye!") # break if user_question: # Construct a chat prompt template using various components prompt = ChatPromptTemplate.from_messages( [ # 毎回必ず含まれるSystemプロンプトを追加 SystemMessage(content=system_prompt), # ConversationBufferWindowMemoryをプロンプトに追加 MessagesPlaceholder(variable_name="chat_history"), # ユーザーの入力をプロンプトに追加 HumanMessagePromptTemplate.from_template("{human_input}"), ] ) conversation = LLMChain( llm=groq_chat, prompt=prompt, verbose=False, memory=memory, ) response = conversation.predict(human_input=user_question) print("User: ", user_question) print("Assistant:", response) return user_question+"[役割]"+response