Anfrage: _invoke () hängt bei der Ausführung von Abfragen mit DIFY Plugin SDKPython

Python-Programme
Anonymous
 Anfrage: _invoke () hängt bei der Ausführung von Abfragen mit DIFY Plugin SDK

Post by Anonymous »

Anfrage: _invoke () hängt beim Ausführen von Abfragen mit DIFY -Plugin SDK
Ich entwickle derzeit ein Plugin mit dem DIFY -Plugin -SDK, das eine Datenbank herstellt, eine Abfrage ausführt und das Ergebnis zurückgibt. Ich habe jedoch ein Hang -Problem innerhalb der Methode _Invoke (), wenn ich versuche, eine Abfrage auszuführen und das Ergebnis zurückzugeben. Schließlich tritt ein Verbindungsfehler auf. Lange Zeit und führt schließlich zu einem Verbindungszeitüberschreitungs- oder -fehler.from collections.abc import Generator
from typing import Any

from dify_plugin import Tool
from dify_plugin.entities.tool import ToolInvokeMessage

from tools.snowflake_client import SnowflakeClient

class SnowflakeQueryTool(Tool):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.sf_client = SnowflakeClient(self.runtime.credentials)

def _invoke(self, tool_parameters: dict[str, Any]) -> Generator[ToolInvokeMessage]:
yield self.create_text_message("Hello, world!")
< /code>
Dieses grundlegende Beispiel wird ohne Probleme erfolgreich ausgeführt.from collections.abc import Generator
from typing import Any

from dify_plugin import Tool
from dify_plugin.entities.tool import ToolInvokeMessage

from tools.snowflake_client import SnowflakeClient

class SnowflakeQueryTool(Tool):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.sf_client = SnowflakeClient(self.runtime.credentials)

def _invoke(self, tool_parameters: dict[str, Any]) -> Generator[ToolInvokeMessage]:
res = self.sf_client.execute_query("SELECT CURRENT_VERSION()")
for row in res:
print(row)

yield self.create_text_message("Hello, world!")

< /code>
Die Druck (Zeile) gibt das erwartete Ergebnis aus, was bestätigt, dass die Schneeflockenverbindung ordnungsgemäß funktioniert. Beobachtungen < /p>

Wenn ich manuell auf Stoppen klicke und dann erneut mit dem Ausführen starte, reagiert das Plugin erfolgreich. /> Annahmen & Anfrage < /p>

Ich vermute, dass das Problem mit der Handlung von Ertrag und Generator im Plugin gehandhabt werden kann, was möglicherweise mit einer Asynchriegrenze /Synchronisation beteiligt ist. /> < /li>
< /ul>
Könnte dies ein Problem innerhalb des Diffy SDK selbst sein, bei dem der Rendite- oder Datenbankanruf in die Bewertung und Streams der Antworten stört.>

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post