TrustGraph Document RAG API
This presents a prompt to the Document RAG service and retrieves the answer. This makes use of a number of the other APIs behind the scenes: Embeddings, Document Embeddings, Prompt, TextCompletion, Triples Query.
Request/response
Request
The request contains the following fields:
query
: The question to answer
Response
The response contains the following fields:
response
: LLM response
REST service
The REST service accepts a request object containing the query
field. The response is a JSON object containing the response
field.
e.g.
Request:
{
"query": "What does NASA stand for?"
}
Response:
{
"response": "National Aeronautics and Space Administration"
}
Websocket
Requests have a request
object containing the query
field. Responses have a response
object containing response
field.
e.g.
Request:
{
"id": "blrqotfefnmnh7de-14",
"service": "document-rag",
"flow": "default",
"request": {
"query": "What does NASA stand for?"
}
}
Response:
{
"id": "blrqotfefnmnh7de-14",
"response": {
"response": "National Aeronautics and Space Administration"
},
"complete": true
}
Pulsar
The Pulsar schema for the Document RAG API is defined in Python code here:
https://github.com/trustgraph-ai/trustgraph/blob/master/trustgraph-base/trustgraph/schema/retrieval.py
Default request queue: non-persistent://tg/request/document-rag
Default response queue: non-persistent://tg/response/document-rag
Request schema: trustgraph.schema.DocumentRagQuery
Response schema: trustgraph.schema.DocumentRagResponse
Pulsar Python client
The client class is trustgraph.clients.DocumentRagClient
https://github.com/trustgraph-ai/trustgraph/blob/master/trustgraph-base/trustgraph/clients/document_rag_client.py