GetRAGSpaceInfo

Restituisce informazioni sullo spazio RAG specificato o su tutti gli spazi RAG, se non è specificato un ID spazio.

Formato 

GetRAGSpaceInfo ( nomeAccountRAG ; { spaceID } )

Parametri 

nomeAccountRAG - un'espressione di testo per il nome dell'account RAG da utilizzare. Nel file corrente, utilizzare l'istruzione di script Configura account RAG per configurare l'account e assegnargli questo nome in qualsiasi momento prima che questa funzione venga utilizzata.

spaceID - ID di uno spazio RAG. Se omesso, restituisce informazioni su tutti gli spazi RAG per l'account specificato.

I parametri racchiusi tra parentesi graffe { } sono opzionali.

Tipo di dati riportato 

Testo

Creata nella versione 

22.0

Descrizione 

GetRAGSpaceInfo restituisce informazioni sugli spazi di retrieval-augmented generation (RAG) sul Server modello AI specificato da nomeAccountRAG. Può essere utilizzato per verificare l'esistenza di uno spazio RAG, monitorarne il contenuto e sottoporre a verifica le operazioni RAG.

Se non viene specificato alcun valore per spaceID, la funzione restituisce un oggetto JSON contenente un array di spazi RAG disponibili per l'account RAG specificato:

Copia
{
  "rag_space_list": [
    {
      "space_id": "<stringa>",
      "model": "<stringa>"
    }
  ]
}
  • rag_space_list è un array di spazi RAG.

  • space_id è la chiave per un ID spazio RAG.

  • model è la chiave per il nome del modello utilizzato per generare vettori di embedding di testo in questo spazio RAG.

Se viene specificato un valore spaceID, la funzione restituisce un oggetto JSON contenente informazioni sullo spazio RAG e sui dati in esso contenuti:

Copia
{
  "rag_space_id": "<stringa>",
  "model": "<stringa>",
  "entries": <numero>,
  "values": [
    {
      "id": <numero>,
      "filename": "<stringa>"
    },
    {
      "id": <numero>,
      "text": "<stringa>"
    }
  ]
}
  • rag_space_id è l'ID dello spazio RAG.

  • model è il nome del modello utilizzato per generare vettori di embedding di testo in questo spazio RAG.

  • entries è il numero di elementi nell'array values.

  • values è un array di blocchi di documenti di testo e nomi di file PDF:

    • id è un ID numerico per il documento di testo da cui proveniva un blocco di testo o per un file PDF.

    • filename è il nome di un file PDF aggiunto allo spazio.

    • text è un blocco di un documento di testo aggiunto allo spazio. Blocchi dello stesso documento di testo hanno lo stesso id.

Note 

  • Un account RAG deve essere configurato utilizzando l'istruzione di script Configura account RAG prima di utilizzare questa funzione.

  • Questa funzione è utile per verificare che esista uno spazio RAG prima di eseguire operazioni su di esso. Per un account RAG valido, se uno spazio non esiste o non contiene dati, questa funzione restituisce un messaggio di errore:

    Errore [Spazio RAG]. Motivo: spazio RAG {space_id} non trovato

  • Se l'account RAG non è valido o non esiste, questa funzione restituisce "?".

  • La funzione può essere utilizzata per la verifica e il monitoraggio degli spazi RAG all'interno della soluzione FileMaker.

Esempio 1 

Ottiene informazioni su tutti gli spazi RAG per un account configurato denominato "account-rag-assistenza-clienti".

GetRAGSpaceInfo ( "account-rag-assistenza-clienti" ) può restituire quanto segue se due spazi RAG contengono dati:

Copia
{
  "rag_space_list": [
    {
      "space_id": "knowledge-base",
      "model": "multi-qa-MiniLM-L6-cos-v1"
    },
    {
      "space_id": "appunti-riunione",
      "model": "multi-qa-MiniLM-L6-cos-v1"
    }
  ]
}

Esempio 2 

Ottiene informazioni su uno spazio RAG specifico con ID "knowledge-base".

GetRAGSpaceInfo ( "account-rag-assistenza-clienti" ; "knowledge-base" ) può restituire il seguente JSON per uno spazio con un file PDF denominato "Politiche.pdf" e un documento di testo diviso in tre blocchi (troncato per brevità).

Copia
{
  "rag_space_id": "knowledge-base",
  "model": "multi-qa-MiniLM-L6-cos-v1",
  "entries": 4,
  "values": [
    {
      "id": 1,
      "filename": "Politiche.pdf"
    },
    {
      "id": 2,
      "text": "Politiche e procedure di assistenza clienti per la gestione di resi e cambi..."
    },
    {
      "id": 2,
      "text": "Assicurarsi che l'articolo che si sta restituendo sia reimballato con tutto..."
    },
    {
      "id": 2,
      "text": "Ci sono 14 giorni di calendario di tempo per restituire un articolo dalla data di ricezione..."
    }
  ]
}

Esempio 3 

Utilizza GetRAGSpaceInfo in uno script per verificare che esista uno spazio RAG prima di eseguire operazioni.

Copia
Configura account RAG [ Nome account RAG: "account-rag-assistenza-clienti" ; Endpoint: "https://myserver.example.com/llm/v1/" ; Chiave API: Globale::Chiave_API_RAG ; Verifica certificati SSL ]

Imposta variabile [ $ragSpaceInfo ; Valore: GetRAGSpaceInfo ( "account-rag-assistenza-clienti" ; "knowledge-base) ]

If [ ContaRicorrenze ( $ragSpaceInfo; "errore [RAG Space]" ) > 0 o ContaRicorrenze ( $ragSpaceInfo ; "?" ) > 0 ]

    # Spazio RAG inesistente. Gestisci errore.

    Mostra finestra personalizz. [ "Errore" ; "Lo spazio RAG specificato non è stato trovato". ] 

Else

    # Spazio RAG esistente. Procedere con le operazioni.
    
    Imposta variabile [ $ragSpaceID ; Valore: JSONGetElement ( $ragSpaceInfo ; "rag_space_id" ) ]
    
   Mostra finestra personalizz. [ "Spazio trovato" ; "Spazio RAG '" & $ragSpaceID & "' è disponibile per l'uso." ]

End If