Questa pagina si applica ad Apigee e Apigee hybrid.
Visualizza la documentazione di
Apigee Edge.
Il criterio SemanticCacheLookup è un criterio di memorizzazione nella cache avanzato progettato per ottimizzare le prestazioni dei carichi di lavoro di AI, in particolare quelli che coinvolgono modelli linguistici di grandi dimensioni (LLM).
Il criterio utilizza l' API Text Embeddings di Vertex AI per generare incorporamenti per il testo e Vector Search per trovare prompt simili in base alla somiglianza semantica, anziché alle corrispondenze esatte.
Il criterio SemanticCacheLookup riduce i tempi di risposta per le query ripetute e ottimizza i costi riducendo il volume di chiamate agli LLM.
Queste norme funzionano in combinazione con le norme SemanticCachePopulate.
Queste norme sono estendibili e il loro utilizzo potrebbe avere implicazioni in termini di costi o di utilizzo, a seconda della licenza Apigee. Per informazioni sui tipi di policy e sulle implicazioni di utilizzo, consulta Tipi di policy.
Prima di iniziare
Prima di utilizzare la policy SemanticCacheLookup, completa le seguenti attività:
- Crea un progetto Vertex AI.
- Crea un indice Vector Search.
- Crea un endpoint Vertex AI per l'indice.
- Crea una policy SemanticCachePopulate.
Per ulteriori informazioni sul completamento di queste attività, consulta Guida introduttiva alle policy di memorizzazione nella cache semantica.
Ruoli obbligatori
Per ottenere le autorizzazioni
necessarie per applicare e utilizzare il criterio SemanticCacheLookup,
chiedi all'amministratore di concederti il ruolo IAM Utente AI Platform (roles/aiplatform.user) sul account di servizio che utilizzi per il deployment dei proxy Apigee.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Abilita API
Abilita le API Compute Engine, Vertex AI e Cloud Storage, se non sono già abilitate.
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre dell'autorizzazione serviceusage.services.enable. Se hai creato il progetto, probabilmente disponi già di questa autorizzazione tramite il ruolo Proprietario (roles/owner). In caso contrario, puoi ottenere questa autorizzazione tramite il ruolo Amministratore utilizzo servizi (roles/serviceusage.serviceUsageAdmin). Scopri come concedere i ruoli.
Elemento <SemanticCacheLookup>
Definisce una policy SemanticCacheLookup.
| Valore predefinito | Consulta la scheda Policy predefinita di seguito. |
| Obbligatorio? | Obbligatorio |
| Tipo | Oggetto complesso |
| Elemento principale | N/D |
| Elementi secondari |
<DisplayName><IgnoreUnresolvedVariables><UserPromptSource><Embeddings><SimilaritySearch> |
L'elemento <SemanticCacheLookup> utilizza la seguente sintassi:
Sintassi
L'elemento <SemanticCacheLookup> utilizza la seguente sintassi:
<SemanticCacheLookup async="false" continueOnError="false" enabled="true" name="SCL-lookup"> <DisplayName>SCL-lookup</DisplayName> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <UserPromptSource>{jsonPath('$.contents[-1].parts[-1].text',request.content,true)}</UserPromptSource> <Embeddings> <VertexAI> <URL>https://{LOCATION}-aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL_ID}:predict</URL> </VertexAI> </Embeddings> <SimilaritySearch> <VertexAI> <URL>https://{PUBLIC_DOMAIN_NAME}/v1/projects/{PROJECT_ID}/locations/{LOCATION}/indexEndpoints/{INDEX_ENDPOINT_ID}:findNeighbors</URL> <DeployedIndexID>{DEPLOYED_INDEX_ID}</DeployedIndexID> <Threshold>0.95</Threshold> <DistanceMeasureType>DOT_PRODUCT_DISTANCE</DistanceMeasureType> </VertexAI> </SimilaritySearch> </SemanticCacheLookup>
Policy predefinita
Il seguente esempio mostra le impostazioni predefinite quando aggiungi un criterio SemanticCacheLookup al flusso nell'interfaccia utente Apigee:
<SemanticCacheLookup async="false" continueOnError="false"enabled="true" name="SCL-lookup"> <DisplayName>SCL-lookup</DisplayName> <IgnoreUnresolvedVariables>false</IgnoreUnresolvedVariables> <UserPromptSource>{jsonPath('$.contents[-1].parts[-1].text',request.content,true)}</UserPromptSource> <Embeddings> <VertexAI> <URL>https://{LOCATION}-aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL_ID}:predict </URL> </VertexAI> </Embeddings> <SimilaritySearch> <VertexAI> <URL>https://{PUBLIC_DOMAIN_NAME}/v1/projects/{PROJECT_ID}/locations/{LOCATION}/indexEndpoints/{INDEX_ENDPOINT_ID}:findNeighbors</URL> <Threshold>0.9</Threshold> <DeployedIndexID>{DEPLOYED_INDEX_ID}</DeployedIndexID> <DistanceMeasureType>DOT_PRODUCT_DISTANCE</DistanceMeasureType> </VertexAI> </SimilaritySearch> </SemanticCacheLookup>
Quando inserisci una nuova policy SemanticCacheLookup nella UI di Apigee, il modello contiene stub per tutte le possibili operazioni. Consulta di seguito le informazioni sugli elementi obbligatori.
Questo elemento ha i seguenti attributi comuni a tutti i criteri:
| Attributo | Predefinito | Obbligatorio? | Descrizione |
|---|---|---|---|
name |
N/D | Obbligatorio |
Il nome interno del criterio. Il valore dell'attributo Se vuoi, utilizza l'elemento |
continueOnError |
falso | Facoltativo | Imposta su false per restituire un errore quando un criterio non va a buon fine. Questo è un comportamento previsto per la maggior parte dei criteri. Imposta su true per continuare l'esecuzione del flusso anche dopo un fallimento del criterio. Vedi anche:
|
enabled |
true | Facoltativo | Imposta su true per applicare il criterio. Imposta su false per disattivare il
criterio. Il criterio non verrà applicato anche se rimane collegato a un flusso. |
async |
falso | Ritirato | Questo attributo è stato ritirato. |
La tabella seguente fornisce una descrizione generale degli elementi secondari di <SemanticCacheLookup>:
| Elemento secondario | Obbligatorio? | Descrizione |
|---|---|---|
<DisplayName> |
Facoltativo | Il nome della policy. |
<IgnoreUnresolvedVariables> |
Facoltativo | Determina se l'elaborazione si interrompe quando una variabile non viene risolta.
Imposta su true per ignorare le variabili non risolte e continuare l'elaborazione.
|
<UserPromptSource> |
Facoltativo | La posizione del payload per l'estrazione del testo del prompt dell'utente. Sono supportati solo i valori di testo stringa.
Questo campo supporta la sintassi dei modelli di messaggi Apigee, incluso l'utilizzo di variabili o funzioni del percorso JSON. Ad esempio: {jsonPath('$.contents[-1].parts[-1].text',request.content,true)} |
<Embeddings> |
Obbligatorio | Elemento contenente le informazioni necessarie per generare gli incorporamenti. |
<SimilaritySearch> |
Obbligatorio | Elemento contenente le informazioni necessarie per eseguire le ricerche di similarità.
Per saperne di più, consulta Eseguire query sull'indice pubblico per ottenere i vicini più prossimi. |
Riferimento all'elemento secondario
Questa sezione descrive gli elementi secondari di <SemanticCacheLookup>.
<DisplayName>
Da utilizzare insieme all'attributo name per etichettare il criterio nell'editor proxy dell'interfaccia utente di gestione con un nome diverso e più naturale.
L'elemento <DisplayName> è comune a tutti i criteri.
| Valore predefinito | N/D |
| Obbligatorio? | Facoltativo. Se ometti <DisplayName>, viene utilizzato il valore dell'attributo name del criterio. |
| Tipo | Stringa |
| Elemento principale | <PolicyElement> |
| Elementi secondari | Nessuno |
La sintassi dell'elemento <DisplayName> è la seguente:
Sintassi
<PolicyElement> <DisplayName>POLICY_DISPLAY_NAME</DisplayName> ... </PolicyElement>
Esempio
<PolicyElement> <DisplayName>My Validation Policy</DisplayName> </PolicyElement>
L'elemento <DisplayName> non ha attributi o elementi secondari.
<IgnoreUnresolvedVariables>
Determina se l'elaborazione si interrompe quando una variabile non viene risolta. Imposta su
true per ignorare le variabili non risolte e continuare l'elaborazione.
IgnoreUnresolvedVariables non è applicabile quando viene fornito <DefaultValue>.
| Valore predefinito | Falso |
| Obbligatorio? | Facoltativo |
| Tipo | Booleano |
| Elemento principale |
<SemanticCacheLookup>
|
| Elementi secondari | Nessuno |
<UserPromptSource>
La posizione del payload per l'estrazione del testo del prompt dell'utente. Sono supportati solo i valori di testo stringa.
Questo campo supporta la sintassi dei modelli di messaggi Apigee, incluso l'utilizzo di variabili o funzioni del percorso JSON.
Ad esempio:
{jsonPath('$.contents[-1].parts[-1].text',request.content,true)}
| Valore predefinito | {jsonPath('$.contents[-1].parts[-1].text',request.content,true)} |
| Obbligatorio? | Facoltativo |
| Tipo | Stringa |
| Elemento principale |
<SemanticCacheLookup>
|
| Elementi secondari | Nessuno |
<Embeddings>
Questo elemento contiene le informazioni necessarie per generare gli incorporamenti di testo.
| Valore predefinito | N/D |
| Obbligatorio? | Facoltativo |
| Tipo | Stringa |
| Elemento principale |
<SemanticCacheLookup>
|
| Elementi secondari |
<VertexAI>
|
L'elemento <Embeddings> utilizza la seguente sintassi:
<Embeddings>
<VertexAI>
<URL>https://{LOCATION}-aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL_ID}:predict</URL>
</VertexAI>
</Embeddings><VertexAI> (elemento secondario di <Embeddings>)
Contiene l'elemento <URL> per gli attributi specifici di Vertex AI.
| Valore predefinito | N/D |
| Obbligatorio? | Obbligatorio |
| Tipo | Stringa |
| Elemento principale |
<Embeddings>
|
| Elementi secondari |
<URL> |
L'elemento VertexAI utilizza la seguente sintassi:
<VertexAI>
<URL>https://{LOCATION}-aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL_ID}:predict</URL>
</VertexAI><URL> (elemento secondario di <VertexAI>)
L'URL utilizzato per generare gli incorporamenti di testo. Consulta la sezione Modelli supportati per un elenco dei modelli che forniscono incorporamenti di testo per il criterio SemanticCacheLookup.
| Valore predefinito | N/D |
| Obbligatorio? | Obbligatorio |
| Tipo | Stringa |
| Elemento principale |
<VertexAI>
|
| Elementi secondari |
Nessuno |
L'elemento URL utilizza la seguente sintassi:
<URL>https://{LOCATION}-aiplatform.googleapis.com/v1/projects/{PROJECT_ID}/locations/{LOCATION}/publishers/google/models/{MODEL_ID}:predict</URL>L'elemento URL supporta l'utilizzo di modelli di URL. Se vuoi, fornisci una variabile in questo elemento
per contenere il valore dell'URL, come mostrato nell'esempio seguente:
<URL>https://{URL_VARIABLE}</URL><SimilaritySearch>
Questo elemento contiene le informazioni necessarie per eseguire ricerche di somiglianze.
La ricerca per similarità può essere eseguita su un indice di ricerca vettoriale di cui è stato eseguito il deployment su un endpoint pubblico o privato (Private Service Connect). Devi fornire
esattamente uno dei seguenti trasporti nell'elemento <VertexAI>:
<URL>: per un endpoint pubblico, tramite REST (:findNeighbors).<PrivateServiceConnect>: per un endpoint privato, tramite gRPC. Un endpoint di indice sottoposto a deployment privato (Private Service Connect) accetta solo gRPC.
Per ulteriori informazioni, consulta Eseguire query sull'indice pubblico per ottenere i vicini più prossimi e Memorizzazione nella cache semantica con un endpoint privato (Private Service Connect).
| Valore predefinito | N/D |
| Obbligatorio? | Obbligatorio |
| Tipo | Stringa |
| Elemento principale |
<SemanticCacheLookup>
|
| Elementi secondari |
<VertexAI> |
L'elemento <SimilaritySearch> utilizza la seguente sintassi.
Endpoint pubblico (REST):
<SimilaritySearch> <VertexAI> <URL>https://{PUBLIC_DOMAIN_NAME}/v1/projects/{PROJECT_ID}/locations/{LOCATION}/indexEndpoints/{INDEX_ENDPOINT_ID}:findNeighbors</URL> <Threshold>0.9</Threshold> <DeployedIndexID>{DEPLOYED_INDEX_ID}</DeployedIndexID> <DistanceMeasureType>DOT_PRODUCT_DISTANCE</DistanceMeasureType> </VertexAI> </SimilaritySearch>
Endpoint privato (Private Service Connect, gRPC):
<SimilaritySearch>
<VertexAI>
<PrivateServiceConnect>
<GrpcEndpoint>grpc://{TARGET_HOST}:10000</GrpcEndpoint>
</PrivateServiceConnect>
<Threshold>0.9</Threshold>
<DeployedIndexID>{DEPLOYED_INDEX_ID}</DeployedIndexID>
</VertexAI>
</SimilaritySearch><VertexAI> (elemento secondario di <SimilaritySearch>)
Contiene gli attributi specifici di Vertex AI utilizzati per eseguire la ricerca di similarità. Fornisci
esattamente uno dei seguenti trasporti: un elemento <URL> (per un endpoint pubblico, tramite REST) o un elemento <PrivateServiceConnect> (per un endpoint privato, tramite gRPC).
| Valore predefinito | N/D |
| Obbligatorio? | Obbligatorio |
| Tipo | Stringa |
| Elemento principale |
<SimilaritySearch>
|
| Elementi secondari |
<URL> |
Per un endpoint pubblico, l'elemento VertexAI utilizza la seguente sintassi:
<VertexAI> <URL>https://{PUBLIC_DOMAIN_NAME}/v1/projects/{PROJECT_ID}/locations/{LOCATION}/indexEndpoints/{INDEX_ENDPOINT_ID}:findNeighbors</URL> <Threshold>0.9</Threshold> <DeployedIndexID>{DEPLOYED_INDEX_ID}</DeployedIndexID> <DistanceMeasureType>DOT_PRODUCT_DISTANCE</DistanceMeasureType> </VertexAI>
Per un endpoint privato (Private Service Connect), l'elemento VertexAI utilizza la seguente sintassi:
<VertexAI>
<PrivateServiceConnect>
<GrpcEndpoint>grpc://{TARGET_HOST}:10000</GrpcEndpoint>
</PrivateServiceConnect>
<Threshold>0.9</Threshold>
<DeployedIndexID>{DEPLOYED_INDEX_ID}</DeployedIndexID>
</VertexAI>La tabella seguente fornisce una descrizione generale degli elementi secondari di
<VertexAI>.
| Elemento secondario | Obbligatorio? | Descrizione |
|---|---|---|
<URL> |
Obbligatorio (fornisci <URL> o <PrivateServiceConnect>) |
Stringa L'URL utilizzato per eseguire ricerche di similarità rispetto a un endpoint di indice Vector Search pubblico, tramite REST ( L'elemento <URL>https://{URL_VARIABLE}</URL> |
<PrivateServiceConnect> |
Obbligatorio (fornisci <URL> o <PrivateServiceConnect>) |
Oggetto complesso Contiene le informazioni di connessione utilizzate per eseguire ricerche di similarità in un indice di ricerca vettoriale privato di cui è stato eseguito il deployment su un endpoint Private Service Connect. Un endpoint privato dell'indice di deployment accetta solo gRPC. Questo elemento contiene un singolo elemento figlio, <PrivateServiceConnect>
<GrpcEndpoint>grpc://{TARGET_HOST}:10000</GrpcEndpoint>
</PrivateServiceConnect>L'elemento
Per saperne di più, consulta Memorizzazione nella cache semantica con un endpoint privato (Private Service Connect). |
<Threshold> |
Facoltativo | Stringa Il valore che un vicino più prossimo deve raggiungere per essere considerato una corrispondenza.
Il valore predefinito è 0,9, adatto a Consulta Scegliere una soglia per la misurazione della distanza. |
<DeployedIndexID> |
Obbligatorio | Stringa L'ID dell'indice di cui è stato eseguito il deployment nell'endpoint dell'indice utilizzato per la memorizzazione nella cache semantica. |
<DistanceMeasureType> |
Facoltativo | Stringa La misura di distanza con cui è stato creato l'indice Vertex AI Vector Search. Imposta
la direzione del confronto I valori validi sono Il valore predefinito è Consulta Scegliere una soglia per la misurazione della distanza. |
Scegliere una soglia per la misurazione della distanza
La misura con cui è stato creato l'indice determina la direzione del
confronto <Threshold>: il prodotto scalare è una somiglianza, quindi un valore maggiore significa
una corrispondenza più stretta, mentre le altre tre sono distanze, in cui un valore minore. Imposta
<DistanceMeasureType> in modo che corrisponda al tuo indice, quindi regola la soglia per questa
misura.
| Misura della distanza | Soglia della cache |
|---|---|
DOT_PRODUCT_DISTANCE (valore predefinito) |
value >= threshold |
COSINE_DISTANCE |
value <= threshold |
SQUARED_L2_DISTANCE |
value <= threshold |
L1_DISTANCE |
value <= threshold |
Per trovare la misura con cui è stato creato l'indice, esegui
gcloud ai indexes describe INDEX_ID --region=REGION e leggi
il campo distanceMeasureType. Per verificare che la policy sia stata applicata, invia la stessa
richiesta due volte e controlla
semanticcache.lookup.policy_name.measure_type e
semanticcache.lookup.policy_name.nearest_neighbor_measure in una sessione
di debug.
Variabili di flusso
Le variabili di flusso configurano il comportamento dinamico del runtime per criteri e flussi in base alle intestazioni HTTP o ai contenuti dei messaggi oppure al contesto disponibile nel flusso. Per saperne di più sulle variabili di flusso, consulta Riferimento alle variabili di flusso.
Questa policy fornisce il seguente insieme di variabili di flusso di sola lettura durante l'esecuzione. Puoi utilizzare queste variabili di flusso con il criterio DataCapture per creare report Analytics personalizzati. Per saperne di più, consulta Raccolta dei dati dei clienti con le norme relative all'acquisizione dei dati.
| Nome variabile | Descrizione |
|---|---|
request.content |
Contiene i contenuti completi della richiesta API in entrata. |
request.url |
Contiene l'URL della richiesta API in entrata. |
SemanticCacheLookup.policy_name.user_prompt |
Contiene componenti specifici estratti dal prompt della richiesta, che viene utilizzato per generare embedding o eseguire ricerche di similarità. |
SemanticCacheLookup.policy_name.embeddings_request |
Contiene il payload della richiesta inviato all'API Vertex AI Embeddings per generare text embedding per il testo di input. |
SemanticCacheLookup.policy_name.embeddings_response |
Contiene la risposta dell'API Vertex AI Embeddings, che include gli embedding di testo generati. |
SemanticCacheLookup.policy_name.dense_embeddings |
Contiene i valori numerici effettivi dell'embedding generati dall'API Vertex AI Embeddings. |
SemanticCacheLookup.policy_name.is_nearest_neighbor_hit |
Specifica se è stato trovato un vicino più prossimo nel database vettoriale per la richiesta e il punto dati specificati soddisfa la soglia di somiglianza. |
SemanticCacheLookup.policy_name.cache_hit |
Specifica se la risposta è stata trovata nella cache semantica. |
SemanticCacheLookup.policy_name.cached_llm_response |
Contiene la risposta recuperata dalla cache semantica (se si è verificato un successo della cache). |
semanticcache.lookup.policy_name.nearest_neighbor_measure |
Contiene il valore non elaborato restituito dall'indice Vector Search per il vicino più prossimo. Impostato su sia corrispondenze che mancate corrispondenze ogni volta che veniva restituito un vicino. |
semanticcache.lookup.policy_name.measure_type |
Contiene la misura della distanza a cui è stata applicata la norma, incluso quando è tornata al valore predefinito. Impostato sia su corrispondenze che su mancate corrispondenze ogni volta che veniva restituito un vicino. |
Messaggi di errore
Questa sezione descrive i codici di errore e i messaggi di errore restituiti da Apigee e le variabili di errore impostate da Apigee, specifiche per il criterio <SemanticCacheLookup>. Queste informazioni sono importanti da conoscere se stai sviluppando regole di errore per gestire i guasti. Per scoprire di più, consulta Cosa devi sapere sugli errori delle norme e Gestione
dei guasti.
Errori di runtime
Questi errori si verificano durante l'esecuzione della policy.
| Codice di errore | Stato HTTP | Causa |
|---|---|---|
steps.semanticcache.lookup.MessageTemplateExtractionFailed |
400 |
Impossibile estrarre i dati dalla richiesta utilizzando l'espressione JSON Path. |
steps.semanticcache.lookup.FailedToExtractUserPrompt |
500 |
Impossibile estrarre il prompt dell'utente dalla richiesta API. |
steps.semanticcache.lookup.EmbeddingsServiceUnavailable |
400 |
Il servizio Vertex AI Embeddings non è al momento disponibile. |
steps.semanticcache.lookup.EmbeddingsAPIFailed |
400 |
Il servizio Vertex AI Embeddings non è riuscito. |
steps.semanticcache.lookup.VectorSearchServiceUnavailable |
400 |
Il servizio Vertex AI Vector Search non è al momento disponibile. |
steps.semanticcache.lookup.VectorSearchAPIFailed |
400 |
Il servizio Vertex AI Vector Search non è riuscito. |
steps.semanticcache.lookup.AuthenticationFailure |
500 |
Il account di servizio non dispone delle autorizzazioni richieste. |
steps.semanticcache.lookup.InternalError |
500 |
Si è verificato un errore imprevisto all'interno del criterio SemanticCacheLookup. |
steps.semanticcache.lookup.CalloutError |
500 |
La chiamata al servizio Vertex AI non è riuscita. |
Errori di deployment
Questi errori si verificano quando implementi un proxy contenente questa policy.
| Nome dell'errore | Causa |
|---|---|
The Embeddings/VertexAI element is required. |
Si verifica se l'elemento <VertexAI> in <Embeddings> è vuoto. |
The SimilaritySearch/VertexAI element is required. |
Si verifica se l'elemento <VertexAI> in <SimilaritySearch> è vuoto. |
Embeddings/VertexAI cannot have both URL and PrivateServiceConnect elements. |
Si verifica se vengono specificati sia gli elementi <URL> sia <PrivateServiceConnect> in <Embeddings>. |
SimilaritySearch/VertexAI cannot have both URL and PrivateServiceConnect elements. |
Si verifica se vengono specificati sia gli elementi <URL> che <PrivateServiceConnect> in <SimilaritySearch>. |
Embeddings/VertexAI/URL or Embeddings/PrivateServiceConnect/GrpcEndpoint element is required. |
Si verifica se non vengono specificati né l'elemento <URL> né l'elemento <GrpcEndpoint> in <Embeddings>. |
SimilaritySearch/VertexAI/URL or SimilaritySearch/PrivateServiceConnect/GrpcEndpoint element is required. |
Si verifica se non viene specificato né l'elemento <URL> né l'elemento <GrpcEndpoint> in <SimilaritySearch>. |
The Embeddings/VertexAI/PrivateServiceConnect element is not supported. Use URL instead. |
Si verifica se l'elemento <PrivateServiceConnect> viene utilizzato in <Embeddings>. |
Embeddings URL {url} is invalid. |
Si verifica se l'elemento <URL> in <Embeddings> è vuoto o non valido. |
The SimilaritySearch URL {url} is invalid. |
Si verifica se l'elemento <URL> in <SimilaritySearch> è vuoto o non valido. |
The scheme {http-scheme} of Embeddings URL {url} must be one of http, https. |
Si verifica se lo schema http dell'elemento<URL> degli incorporamenti non è valido. |
The scheme {http-scheme} of SimilaritySearch URL {url} must be one of http, https. |
Si verifica se lo schema http dell'elemento SimilaritySearch<URL> non è valido. |
The SimilaritySearch /VertexAI/PrivateServiceConnect/GrpcEndpoint {grpc-endpoint} must be in the format "grpc://TARGET_HOST:PORT". |
Si verifica se l'elemento <GrpcEndpoint> in <SimilaritySearch> non è nel formato grpc://TARGET_HOST:PORT. |
The scheme {grpc-scheme} of SimilaritySearch /VertexAI/PrivateServiceConnect/GrpcEndpoint {grpc-endpoint} must be "grpc". |
Si verifica se lo schema grpc dell'elemento SimilaritySearch<GrpcEndpoint> non è valido. |
SimilaritySearch/Threshold element must not be NaN. |
Si verifica se l'elemento <Threshold> in <SimilaritySearch> è
NaN. Sono consentiti Infinity e -Infinity. |
Invalid DistanceMeasureType {value}. Supported values are DOT_PRODUCT_DISTANCE,
COSINE_DISTANCE, SQUARED_L2_DISTANCE and L1_DISTANCE |
Si verifica se l'elemento <DistanceMeasureType> in <SimilaritySearch> non è uno dei quattro valori supportati. La corrispondenza è esatta. Consulta i parametri di configurazione dell'indice. |
SimilaritySearch/DeployedIndexID element is required. |
Si verifica se l'elemento <DeployedIndexID> in <SimilaritySearch> è vuoto. |
SimilaritySearch/DeployedIndexID element must not contain spaces. |
Si verifica se l'elemento <DeployedIndexID> in <SimilaritySearch> contiene spazi. |
Variabili di errore
Questa policy imposta queste variabili quando attiva un errore in fase di runtime. Per saperne di più, consulta Cosa devi sapere sugli errori relativi alle norme.
| Variabili | Dove | Esempio |
|---|---|---|
fault.name="FAULT_NAME" |
FAULT_NAME è il nome dell'errore, come elencato nella tabella Errori di runtime riportata sopra. Il nome del guasto è l'ultima parte del codice di guasto. | fault.name Matches "UnresolvedVariable" |
semanticcachelookup.POLICY_NAME.failed |
POLICY_NAME è il nome specificato dall'utente della policy che ha generato l'errore. | semanticcachelookup.SC-lookup.failed = true |
Esempio di risposta di errore
{ "fault": { "faultstring": "SemanticCacheLookup[SC-lookup]: unable to resolve variable [variable_name]", "detail": { "errorcode": "steps.semanticcachelookup.UnresolvedVariable" } } }
Regola di errore di esempio
<FaultRule name="SemanticCacheLookup Faults">
<Step>
<Name>SCL-CustomSetVariableErrorResponse</Name>
<Condition>(fault.name = "SetVariableFailed")</Condition>
</Step>
<Condition>(semanticcachelookup.failed = true)</Condition>
</FaultRule>Schemi
Ogni tipo di norma è definito da uno schema XML (.xsd). Per riferimento, gli schemi delle norme
sono disponibili su GitHub.