Skip to main content
Internal resources is where you register in-house LLM endpoints and SQL databases once. After that, any block can reference them by name, with no pasting connection strings per block. The list shows each resource’s type (LLM / DB), name, and address. Edit or delete from the row.

Adding an endpoint

Settings → Internal resources → Add → Endpoint:
  • Name: what blocks will call it (e.g. GPU box A).
  • Address: an OpenAI-compatible base URL (e.g. http://localhost:11434/v1).
  • Purpose (optional): what the endpoint serves: Inference, Embedding, Reranker, Retrieval, OCR, Voice, or Image.
  • Custom headers (optional): HTTP headers sent with every request. Put authentication here (e.g. Authorization: Bearer sk-...). Blank lines are dropped on save.
Test connection calls GET /v1/models (falling back to /api/tags and /models) against the address with your headers. It runs from the server, so browser CORS doesn’t matter.

Set up a GPU box

For an empty GPU server, Set up a GPU box installs a sidecar in one click: Nora issues a token, and you run the printed install command on the GPU machine. The endpoint registers itself when the sidecar comes up.

Adding a database

Settings → Internal resources → Add → Database:
  • Name: e.g. prod-orders.
  • Database URL: postgres://…, mysql://…, or mariadb://….
Test connection opens a short-lived pool and runs SELECT 1. Failures aren’t cached, so retesting after a fix is safe.

Using a resource in a block