Bei Verwendung der strukturierten Langchain-Ausgabe können keine Token-Logprobs abgerufen werdenPython

Python-Programme
Anonymous
 Bei Verwendung der strukturierten Langchain-Ausgabe können keine Token-Logprobs abgerufen werden

Post by Anonymous »

Ich verwende Langchain, um ein LLM aufzurufen, und ich möchte die Logprobs für jedes Token erhalten.
Ich möchte sie erhalten, nachdem ich Folgendes getan habe:

Code: Select all

from langchain_openai import ChatOpenAI

llm = ChatOpenAI(
openai_api_base="...",
openai_api_key="...",
model="...")
structured_llm = llm.with_structured_output(ResponseFormat, method="json_schema")
msg = llm.invoke(("human", "how are you today?"))
# ... there is no response_metadata
Ich habe versucht, .bind(logprobs=True) sowohl auf llm als auch auf structure_llm hinzuzufügen, aber das Ergebnis ist das gleiche.
Das Problem ist bekannt und wird hier beschrieben:
https://github.com/langchain-ai/langcha ... ions/29665
aber Trotzdem funktioniert ein Vorschlag wie dieser nicht:

Code: Select all

structured_llm = llm.with_structured_output(ResponseFormat, method="json_schema", include_raw=True)
msg = structured_llm.invoke(("human", "how are you today?"))
# ... msg["raw"].response_metadata["logprobs"] is None
Der einzige Grund, der mir einfällt, ist, dass ich einen LiteLLM-Proxy kontaktiere, der wiederum Azure/Openai-Modelle kontaktiert und mir die Antwort zurücksendet, aber ich bin überrascht, dass dieser Fall nirgendwo besprochen wird.
Details:
  • Python-Version == 3.10.5
  • langchain-openai-Version == 0.2.1
  • langchain-Version == 0.3.2
  • pydantic-Version == 2.11.7

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post