LangChain `LLMChain` работает нормально, но при использовании оператора `|` с `ChatOpenAI` и `ChatPromptTemplate` выдаетPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 LangChain `LLMChain` работает нормально, но при использовании оператора `|` с `ChatOpenAI` и `ChatPromptTemplate` выдает

Сообщение Anonymous »

Я работаю над чат-ботом, использующим LangChain с моделью OpenAI gpt-3.5-turbo. Когда я использую метод LLMChain для объединения моего экземпляра ChatOpenAI, ChatPromptTemplate и StrOutputParser, все работает нормально, и ответы генерируются правильно.
Однако, когда я использую оператор |, я получаю следующую ошибку:

Код: Выделить всё

ValueError: Invalid input type . Must be a PromptValue, str, or list of BaseMessages.
Вот соответствующая часть моего кода:

Код: Выделить всё

def chatbot(input_user_message):
# creating a prompt template
chat_prompt = ChatPromptTemplate.from_messages(
[
("system", "You are a helpful AI assistant."),
MessagesPlaceholder(variable_name="history_messages"),
("human", "{input_user_message}"),
]
)

# initializing OpenAI Chat model
llm = ChatOpenAI(model="gpt-3.5-turbo", temperature=0.7)

trimmer = trim_messages(
max_tokens=100,
strategy="last",
token_counter=llm,
# Usually, we want to keep the SystemMessage
include_system=True,
# start_on="human" makes sure we produce a valid chat history
start_on="human",
)

def get_session_history(session_id):
if session_id not in st.session_state.store:
st.session_state.store[session_id] = ChatMessageHistory()
else:
st.session_state.store[session_id].messages = trimmer.invoke(st.session_state.store[session_id].messages)
return st.session_state.store[session_id]

# Initializing the output parser
output_parser = StrOutputParser()

# Creating an LLMChain with the prompt and memory
#conversation_chain = LLMChain(
#   llm=llm,
#   prompt=chat_prompt,
#   output_parser=output_parser,  # To parse the LLM's response into a string for display
# verbose=True,  # Displays detailed logs for debugging
#)
conversation_chain = llm | chat_prompt | output_parser

model_with_memory = RunnableWithMessageHistory(
conversation_chain,
get_session_history,
input_messages_key="input_user_message",
history_messages_key="history_messages",
)

session_id = "1234"
# config = {"configurable": {"session_id": session_id}}

response = model_with_memory.invoke(
{"input_user_message": input_user_message},
{"configurable": {"session_id": session_id}},
)
print(response)
return response["text"]
Почему оператор | в этом случае не работает, в то время как LLMChain работает нормально? Есть ли что-то особенное в процессе ввода или цепочки с объектами Runnable в LangChain, что мне может не хватать?
Любые рекомендации по правильному использованию оператора | с ChatOpenAI и ChatPromptTemplate.
Я использую python==3.12.7 langchain==0.3.9 openai==1.55.0 langchain-openai==0.2.10

Подробнее здесь: https://stackoverflow.com/questions/792 ... chatopenai
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • LangChain `LLMChain` работает нормально, но при использовании оператора `|` с `ChatOpenAI` и `ChatPromptTemplate` выдает
    Anonymous » » в форуме Python
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • RunnableSequence вместо LLMChain выдает ошибку (обновление из устаревшего langchain)
    Anonymous » » в форуме Python
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous
  • Использование функциональности Langchain ChatOpenAI с LiteLLM
    Anonymous » » в форуме Python
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Использование функциональности Langchain ChatOpenAI с LiteLLM
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Ошибка с Langchain Chatprompttemplate.from_messages
    Anonymous » » в форуме Python
    0 Ответы
    2 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»