HTTP Request Tool gibt keine Binärdaten zurück

Beschreibe das Problem/den Fehler/die Frage

Vielleicht übersehe ich etwas Offensichtliches, aber ich versuche, ein HTTP Request Tool zu meinem Agent hinzuzufügen.

Mein Test zeigt korrekt, dass das LLM das Tool aufruft, aber selbst wenn das Tool so konfiguriert ist, dass es eine Datei zurückgibt, gibt der Node die unten gezeigte Ausgabe zurück. Ich habe erwartet, das Binär der PDF zu erhalten. Interessanterweise gibt der HTTP Request Node für dieselbe URL das Binär wie erwartet zurück, da die URL auf eine PDF verweist.

Was könnte ich falsch machen? Die Idee war, einen Satz von Tools zu haben, die meinem Agent ermöglichen, über URLs nachzudenken, die Ressource (HTML, Datei usw.) zu GET und dann das Binär in Google Cloud Storage zu schreiben.

Teile die vom letzten Node zurückgegebene Ausgabe mit

1 item[

{

"action":"sendMessage",

"sessionId":"9f1axxxxxxxxx",

"chatInput":"https://arxiv.org/pdf/2608.02569",

"URL":"https://arxiv.org/pdf/2608.02569",

"toolCallId":"call_TptExEnexxxxxxxxxxx"

}]

Informationen zu deinem n8n-Setup

  • n8n-Version: Cloud 2.32.1

Hallo @datanerdery3 Willkommen!

halte das Binäre aus dem Agent heraus. Ersetze das HTTP Request Tool durch ein Call n8n Workflow Tool. Der Agent übergibt eine URL, der Sub-Workflow führt Download und Upload mit echten Nodes durch, und nur eine kurze JSON-Quittung geht zurück zum Modell

Hallo @datanerdery3

Der AI Agent-Knoten kann keine rohen Binärströme verarbeiten, da Tools, die an LLMs angebunden sind, darauf ausgelegt sind, Textstringkontext an das Modell zurückzuleiten, was dazu führt, dass Binärdaten vom HTTP Request Tool gelöscht oder in Tool-Aufrufsmetadaten konvertiert werden.

Um eine PDF herunterzuladen und sie über einen Agent in Google Cloud Storage (GCS) zu schreiben, sollte der Agent nur Kontrollfluss und URLs verwalten, während ein Sub-Workflow oder Tool den Binärstrom direkt im Speicher/in der Speicherung verarbeitet und Metadaten an das LLM zurückgibt.

Danke für dein Feedback. Ich dachte an n8n als den Orchestrator, der steuert, wie Nodes aufgerufen werden, oder in diesem Fall, wie der Kontext im State des Runs verwaltet wird. Ich dachte nicht daran, dass der Agent etwas mit der Binärdatei tun muss, außer zu wissen, dass sie in der Session verfügbar ist und er n8n mitteilen kann, wie die Binärdatei mit einem anderen Tool zu handhaben ist. @Hammad_gaming Ich dachte an diesen Ansatz, also danke, dass du ihn empfohlen hast. Ich war mir einfach nicht sicher, ob dies „Overkill

Willkommen @datanerdery3