--- title: AI Recipient & Field Detection (Self-hosting) description: Configure Google Vertex AI so Documenso can detect recipients and fields automatically. --- import { Accordion, Accordions } from 'fumadocs-ui/components/accordion'; import { Callout } from 'fumadocs-ui/components/callout'; import { Step, Steps } from 'fumadocs-ui/components/steps'; ## Overview This guide covers how to enable the AI recipient and field detection features when you self-host Documenso. ## What This Enables - Detect recipients from uploaded PDFs (roles, names, emails when present). - Detect and place fields (signature, initials, name, email, date, text, number, radio, checkbox) onto draft envelopes. - Built-in rate limits (3 requests per minute per IP) to prevent abuse. ## Prerequisites - A Google Cloud project with the **Vertex AI API** enabled and billing active. - A **Vertex AI Express API key** with access to Gemini models (create via the [Vertex AI Express flow](https://cloud.google.com/vertex-ai/generative-ai/docs/start/express-mode/overview) and manage keys in [API keys](https://cloud.google.com/vertex-ai/generative-ai/docs/start/api-keys)). - Documenso version that includes the AI detection feature and the corresponding database migration. ## Configure Environment Variables Add these variables to your deployment `.env` (or secret manager): ``` GOOGLE_VERTEX_PROJECT_ID="" GOOGLE_VERTEX_API_KEY="" # Optional, defaults to "global" GOOGLE_VERTEX_LOCATION="global" ``` Use a region close to your users if you need data residency considerations (e.g. `europe-west1`). If you omit the location, Documenso uses `global`. Not all models are available in every region; if a model is unavailable, switch to a supported region. ## Deploy with the Published Container - Use the official Documenso image (DockerHub or GHCR) and supply the Vertex env vars above. - Ensure migrations run on startup (the container runs `prisma migrate deploy` in production mode). - Restart the container after adding or changing Vertex env vars. ## Enable the Feature in Documenso Once the service is running with the Vertex env vars: {/* prettier-ignore */} ### Organisation settings Go to **Settings** → **Document Preferences** → **AI Features** and set to **Enabled**. Teams that inherit organisation defaults will get this automatically. ### Team settings If a team overrides organisation defaults: - Go to **Team Settings** → **Document Preferences** → **AI Features** - Choose **Enabled**, or **Inherit** to follow the organisation ### Verify in the editor Open a draft envelope and check: - **Recipients**: sparkle button for AI detection is visible - **Fields**: **Detect with AI** is available ## Troubleshooting Wait a minute or two and retry (rate limit is 3/min per IP). Ensure the env vars are set, the server was restarted after setting them, and `aiFeaturesEnabled` is enabled at organisation/team level. Confirm the Vertex API key is valid and the project has Vertex AI enabled. Check server logs for status codes from Vertex. If issues persist, recheck env vars, restart the service, and confirm the Prisma migration was applied. --- ## See Also - [AI Detection (User Guide)](/docs/users/documents/advanced/ai-detection) - How to use AI detection features - [Environment Variables](/docs/self-hosting/configuration/environment) - All configuration options