In diesem Dokument werden Fehler beschrieben, die bei der Verwendung optimierter KI-Funktionen auftreten können. Außerdem finden Sie Beispiele für Fehler und empfohlene Korrekturen.
Mit Leistungseinbußen ist zu rechnen. Optimierte KI-Funktion ist nicht verfügbar
Beschreibung
Diese Warnung weist darauf hin, dass die Abfrage auf das LLM zurückgegriffen hat. Das passiert, wenn die optimierte Funktion noch trainiert wird, nie vorbereitet wurde, die Überprüfung der Laufzeitgenauigkeit nicht bestanden hat oder wenn die in der Funktion ai.if() referenzierten Spalten für Inhalt und Einbettung nicht zur selben Tabelle gehören. Bei kleineren Tabellen lässt sich das Proxy-Modell möglicherweise nicht gut verallgemeinern und die Genauigkeit liegt in der Regel unter 95 %. Daher verwendet AlloyDB standardmäßig das LLM.
Beispielabfrage, die den Fehler verursacht
EXECUTE positive_reviews_query;
Empfohlene Korrektur
- Warten Sie, bis das Training der optimierten Funktion abgeschlossen ist.
- Achten Sie darauf, dass die Abfrage mit der Anweisung
PREPAREkorrekt vorbereitet wird. - Prüfen Sie, ob die in der Funktion
ai.if()referenzierten Spalten für Inhalt und Einbettung zur selben Tabelle gehören. - Optimierte Funktionen (Vorschau) eignen sich besser für größere Tabellen. Sie können auch arraybasierte KI-Funktionen verwenden, um die Leistung zu verbessern.
Wenn Sie die Überprüfung der Laufzeitgenauigkeit umgehen möchten (z. B. in Entwicklungsumgebungen), legen Sie
google_ml_integration.runtime_accuracy_checkfür die gesamte Datenbankumgebung aufofffest.ALTER DATABASE DATABASE_NAME SET google_ml_integration.runtime_accuracy_check = off;Ersetzen Sie
DATABASE_NAMEdurch den Namen Ihrer Datenbank.
Abfrage verarbeitet keine Zeilen oder Modellvorbereitung schlägt fehl
Beschreibung
Wenn die Abfrage keine Zeilen verarbeitet, liegt das hauptsächlich daran, dass die Einbettungen nicht generiert wurden oder die gesamte Einbettungsspalte NULL-Werte enthält. Dadurch schlägt die Abfragevorbereitung fehl, da keine Zeilen mit NULL-Einbettungen berücksichtigt werden.
Empfohlene Korrektur
- Generieren Sie Einbettungen für Ihre Daten, bevor Sie optimierte Funktionen verwenden.
- Achten Sie darauf, dass die Einbettungsspalte keine
NULL-Werte enthält. - Abfragen, die sich nur in konstanten Werten in der
WHERE-Klausel unterscheiden, verwenden möglicherweise weiterhin ein vorhandenes trainiertes Modell.
Langsame Leistung trotz Verwendung optimierter KI-Funktionen
Beschreibung
Achten Sie darauf, dass Sie Ihr Kontingent für die Gemini Enterprise Agent Platform nicht überschreiten. Auch bei optimierten KI-Funktionen muss für die erste Überprüfung der Laufzeitgenauigkeit das Remote-LLM für eine Stichprobe von Zeilen aufgerufen werden. Ein unzureichendes Kontingent kann dazu führen, dass diese erste Überprüfung langsam ist oder fehlschlägt.
Empfohlene Korrektur
Prüfen Sie Ihr Kontingent für die Agent Platform und fordern Sie bei Bedarf eine Erhöhung an, damit die erste Überprüfung der Laufzeitgenauigkeit ohne Verzögerungen durchgeführt werden kann.
ERROR: function ai.if(prompt => text, embedding => vector) does not exist
Beschreibung
Wenn Sie den Parameter model_id zusammen mit der Einbettungsspalte übergeben, wenn Sie die Funktion ai.if() aufrufen, verwendet AlloyDB nicht das trainierte Proxy-Modell und generiert einen Fehler ähnlich dem folgenden:
testdb=# select ai.if('Is the rating positive?' || review, review_embedding, 'gemini-2.5-pro') from restaurant_reviews;
ERROR: function ai.if(text, vector, unknown) does not exist
LINE 1: select ai.if('Is the rating positive?' || review, review_embe...
^
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
Empfohlene Korrektur
Achten Sie darauf, dass Sie den Wert model_id nicht übergeben, wenn Sie die Funktion ai.if() aufrufen. So wird sichergestellt, dass AlloyDB das trainierte Proxy-Modell verwendet, um die Abfrage zu verarbeiten.