Skip to main content

Bringing Your Own Model

FYAI includes platform models you can use straight away. Bring your own model when you need a model the platform doesn't offer, want usage billed to your own provider contract, or must keep traffic in a specific cloud account or region.

note

Bring-your-own-key models need a plan that allows them. On the standard plans that is Pro and Business. You also need the Editor role or higher in the project.

Step 1: Store the credential in an integration​

The model form has no API key field. The key lives in an integration that the model links to.

  1. Go to Resources → Integrations and click +.

  2. Give it an Integration Name (for example OpenAI (Acme)) and a Tree Path (for example /llm-keys/openai).

  3. Under Secrets, add the secrets your provider needs, using these exact names:

    Provider / auth modeSecret names
    OpenAI, Anthropic, Google AI Studio, DeepSeek, GitHub Copilot, OpenAI-compatibleapi_key
    Azure, API Keyapi_key
    Azure, Client Secret (Entra ID)azure_tenant_id, azure_client_id, azure_client_secret
    Amazon Bedrock, API Key (bearer token)aws_bearer_token
    Amazon Bedrock, IAM Access Keysaws_access_key_id, aws_secret_access_key, optionally aws_session_token
    Amazon Bedrock, Assume Role (cross-account)aws_role_arn, aws_external_id
    Google Vertex AIgcp_service_account_json (the service account key file contents)
    OllamaNone needed unless your server requires a key

    You can also store base_url or organization as secrets instead of on the model.

  4. Click Create.

Use a separate integration per environment or per key so you can rotate them independently.

Step 2: Create the model​

  1. Go to Resources → Models and click +.
  2. Enter a Model Name, for example GPT-5 Pro (Acme key). Optionally add a Description, Path and Tags.
  3. Choose the Platform and API Type, then fill in the fields for your provider:

OpenAI​

FieldValue
PlatformStandard (OpenAI-compatible)
API TypeOpenAI (Responses) for reasoning models, or OpenAI (Completions)
modelFor example gpt-5-pro
Reasoning EffortResponses API only: Default (unset), Low, Medium or High. Some reasoning models require High.

Leave base_url blank.

Anthropic​

FieldValue
PlatformStandard (OpenAI-compatible)
API TypeOpenAI (Completions)
modelA Claude model ID, for example claude-sonnet-5-5. IDs beginning claude- are routed to Anthropic's API.

Any OpenAI-compatible endpoint​

FieldValue
PlatformStandard (OpenAI-compatible)
API TypeOpenAI (Completions)
modelThe provider's model ID
base_urlThe API root, for example https://api.example.com/v1. Don't include /chat/completions; it's stripped if you do.

Google Gemini (AI Studio key)​

FieldValue
PlatformStandard (OpenAI-compatible)
API TypeGoogle
modelFor example gemini-3-pro
Google Search GroundingOn to let the model ground answers with Google Search.

DeepSeek​

Platform Standard (OpenAI-compatible), API Type DeepSeek, and the DeepSeek model ID.

GitHub Copilot​

Platform Standard (OpenAI-compatible), API Type GitHub Copilot, and the model ID. The linked integration's api_key holds the GitHub token.

Ollama​

Platform Standard (OpenAI-compatible), API Type Ollama, the model name (for example llama3) and base_url set to your Ollama server. The server must be reachable from FYAI's cloud, so localhost on your own machine won't work.

Azure OpenAI or Azure AI Foundry​

FieldValue
PlatformAzure (OpenAI / AI Services)
API TypeChat Completions, Responses API (stateful), or DeepSeek (AI Foundry) for a DeepSeek deployment
Deployment NameThe deployment name in your Azure resource
Endpoint URLYour resource endpoint, for example https://my-resource.openai.azure.com
api_versionThe Azure API version, if your endpoint needs one
Auth ModeAPI Key or Client Secret (Entra ID)

Amazon Bedrock​

FieldValue
PlatformAmazon Bedrock
API TypeRequired by the form but not used for Bedrock; choose OpenAI (Completions)
Model / inference-profile idFor example au.anthropic.claude-sonnet-5-5
AWS Region (e.g. us-east-1)Required
Auth ModeAPI Key (bearer token), IAM Access Keys or Assume Role (cross-account)

Google Vertex AI​

FieldValue
PlatformGoogle Vertex AI
API TypeRequired by the form but not used for Vertex AI; choose Google
modelFor example gemini-3-pro
GCP Project ID (e.g. fyai-prod-123456)Required
GCP Location (e.g. us-central1)Required
Google Search GroundingOptional
  1. Under API Key Integration, click Link Integration, choose the integration from Step 1 and click Link.
  2. Optionally set Context Length (total tokens) and Max Output (completion tokens) so the platform trims history correctly. Other generation settings are listed in Model Settings.
  3. Click Create.

Step 3: Check it​

  1. Open the model's Definition tab.
  2. Check the Credential card says the key is referenced from the vault, and that Findings is empty.
  3. Check the Context budget leaves reasonable Prompt headroom.
  4. Click Run preflight. Each check shows pass or fail with a reason.

Preflight confirms a client can be built. To confirm the provider answers, chat with an agent that uses the model.

Step 4: Use it​

  1. Open an agent under Build → Agents.
  2. Set LLM Configuration to your new model.
  3. Save, then send the agent a message from Chat or the collaboration pane.

Different agents in a team can use different models: a fast, cheap model for routing and a stronger one for analysis. To spread one agent across several models or deployments, use a model group.

Troubleshooting​

ProblemWhat to check
Authentication errorsThe linked integration has the right secret names (Step 1) and the value has no stray spaces.
404 from the providerThe model or Deployment Name is exact (they're case-sensitive), and base_url is the API root.
"Model is required when creating a non-folder config."Fill in the model (or Deployment Name / Model / inference-profile id) field.
Model missing from the agent pickerThe model saved in the current project. Switch projects if needed.
default_headers rejectedIt contains a credential header. Move the credential to the integration.