An LLM Profile lets you use a Large Language Model (LLM) as a translation provider in Smartling. Each Profile is a reusable collection of settings that defines which model to use, along with the translation prompt and parameters that tell the model how to generate translations.
LLM Profiles are available for GPT (OpenAI), GPT (Azure), Google Gemini (Vertex AI), and Amazon Bedrock. If you're using an NMT engine, or an LLM where the prompt is managed by the provider itself (for example, DeepL or Google Translation LLM), set up an MT Profile instead. For the full list of supported providers, see Supported MT and LLM Providers.
How to access LLM Profiles
To view, manage, or create LLM Profiles, go to the AI Hub from the top navigation bar of your Smartling dashboard, then click the Profiles tab.
How to create an LLM Profile
Step 1: Add provider credentials
Before creating a new LLM Profile, make sure the provider credentials for your LLM provider are stored in Smartling.
- If Smartling provisions credentials for you: your Customer Success Manager will already have created an LLM Profile using Smartling credentials, so you don't need to add credentials yourself. You'll still need to customize the Profile with your own translation prompt and parameters (continue to Step 2).
- If you're bringing your own provider key: follow these instructions to add your credentials on the Credentials page of the AI Hub before creating an LLM Profile.
Please note that for LLM Profiles that use Smartling-provisioned credentials, thinking models are not supported and prompt messages are limited to 4,000 tokens.
Step 2: Create the Profile
Once your provider credential is saved in Smartling, create a Profile to use the LLM in your Smartling workflows or integrations.
- From the AI Hub, navigate to Profiles.
- Click Create Profile.
- Select one of the following, based on your provider:
- LLM Profile, if you're using GPT (OpenAI), GPT (Azure), Google Gemini (Vertex AI), or Amazon Bedrock.
- MT Profile, if you're using any other supported LLM provider. The setup process looks slightly different; see Creating and Managing MT Profiles for details.
If your Customer Success Manager has already provided credentials for testing, an LLM Profile will already be set up. Click the Profile name to customize it, entering your own translation prompt and parameters.
Provider details
If you're bringing your own provider credentials, enter the following on the Configuration Details screen:
- LLM Provider: the LLM provider you want to use as a translation provider in Smartling.
- LLM Profile Name: a name your team will easily recognize, ideally indicating the provider and any additional specifications.
- Provider Credentials: the provider credential you created earlier.
- Version or model details: the version and/or model to use for translation.
Linguistic Packages
Select which of your existing Linguistic Package(s) Smartling should use for prompt tooling with RAG. RAG automatically augments your translation prompt with linguistic assets (translation memory examples, glossary terms, and style rules) from these packages; you'll enable it later, under Assets References.
- Use the dropdown to view available Linguistic Packages, each showing its source locale and included target locales.
- Click +Add to add a package to your LLM Profile. You can add as many as you like.
Select only Linguistic Packages that are good quality and contain reliable linguistic assets.
If you select more than one package, drag and drop to set their priority order. The higher-ranked package is always used first; if it has a matching source/target locale pair, lower-ranked packages are not used.
These Linguistic Packages only apply when the LLM Profile is used with Smartling's Instant MT integrations or MT API. In a translation workflow or CAT Tool suggestions, the project's own Linguistic Package is used automatically instead. They're also not used for Glossary Term Insertion or TM Match Insertion.
Translation parameters (optional)
Unlike traditional MT providers, LLMs let you customize the translation output with additional parameters, controlling factors like creativity, randomness, tolerance for repetition, and sample size. This step is optional. If no custom values are entered, your model's defaults are used.
Example (different providers support different parameters):
For details on available parameters, see Translation Parameters for LLM Translation and your provider's documentation.
Hallucination detection
Smartling's hallucination detection automatically flags potentially problematic translations (LLM "hallucinations"), so you can route affected strings to an alternative provider or workflow. See Hallucination Detection For LLM Translation for details.
Hallucination detection is enabled by default. To disable it, expand Parameter Details and select the "Disable hallucination detection" checkbox.
Once you've entered all configuration details, click Next to set up your translation prompt.
Step 3: Configure the translation prompt
In this step, you'll write the translation prompt that instructs the LLM how to translate your content. Smartling's prompt editor lets you create your prompt on the left and test the translation output on the right, so you can verify it meets your expectations.
New to writing translation prompts? See Best Practices for Writing LLM Translation Prompts.
Add Assets References (enable RAG)
Smartling can automatically inject relevant examples from your linguistic assets into your translation prompt using RAG (Retrieval-Augmented Generation). Select the checkboxes for the asset types you want the LLM to reference: Translation Memory Examples, Glossary Terms, and Style Rules for AI.
For more details, see Prompt Tooling with RAG for LLM translations.
Configure the System Role
The System Role section sets up the translation task in two parts:
-
Default System Role message (provided by Smartling): Grayed out and not editable. It declares the input fields the LLM will receive (
sourceLanguage,targetLanguage,sourceTexts, and, if enabled under Assets References,translationExamples,glossaryTerms, andstyleRules), the output field (translatedTexts), and the structure the response must follow. Smartling's system prompt uses the DSPy (Declarative Self-improving Python) framework to ensure any selected Assets References are applied consistently across all supported LLM models. It ends with the line "your objective is:", which your own translation prompt then completes.
- Your System Role message (your translation prompt): The editable field below the default message is where you enter your own translation prompt, i.e. the objective and any instructions. It comes pre-filled with a simple starter prompt, "Translate from {sourceLanguage} to {targetLanguage}", which you can edit or replace. At least one System Role message is required. See Best Practices for Writing LLM Translation Prompts for guidance on what to include, wording best practices, and an example starter prompt.
Click +Add Message to add further System Role messages. This is useful when part of your prompt should always apply and another part should only apply under specific conditions (for example, a locale-specific instruction), since each message has its own Condition field. See Conditions below.
Configure the User Role (optional)
The User Role section carries the actual per-request data for each translation: the source and target language, the source text(s) to translate, and (if enabled under Assets References) translation memory examples, glossary terms, and style rules. It also includes the instruction telling the LLM to respond with the output fields in the required format. Like System Role messages, User Role messages can each have their own Condition.
-
Default User Role message (provided by Smartling): Grayed out and not editable. Smartling fills this in automatically for every request, inserting the per-request values via placeholders (for example,
{{source_language}},{{target_language}},{{source_texts}}) and the response-format instruction. You don't need to write anything here for translation to work.
- Additional User Role messages (optional): Click +Add Message to add your own custom message above the default one. Typically this is not needed, since Smartling's default User Role already supplies the source text, language pair, and assets. Add a custom User Role message only for advanced cases, such as sending extra per-request context that should be treated as user input, or a message that should only be sent under a specific Condition (for example, an instruction that applies only when the source language is English). Each added message has its own Condition field.
How System Role and User Role fit together: An LLM request is made up of messages, and each message has a role that tells the model how to treat it. System Role messages are the constant setup for the translation: who the model should act as, the task, the rules to follow, and the format of the input and output. User Role messages carry the actual per-request data the model acts on: the specific source text, the language pair, and any retrieved linguistic assets.
Together, the System Role (Smartling's pre-populated message plus your own prompt) and the User Role make up the full request sent to the model. Smartling generates most of this automatically. To see exactly what's sent to the LLM (both roles, with all values filled in), use the Rendered Prompt tab after running a test (see Output).
Conditions
Conditions and placeholders can be used to dynamically adapt the prompt to different translation scenarios. For example, conditional syntax lets you create a single prompt that supports locale-specific rules.
Every message, whether System Role or User Role, has its own separate Condition field underneath it. This field controls only that one message, not the section as a whole. Type the conditional syntax directly into the Condition field below the message it applies to.
The Condition field lets you specify whether that message applies in the rendered prompt:
- Leave the field blank, or enter "true", if the message should be applied.
- Enter "false" if the message should not be applied.
Example:
Examples
-
System Role message with a Condition (a rule that only applies to one language pair):
- Message:
Use formal register (Sie-form) for this translation. - Condition:
target_language == "de-DE" - Effect: this instruction is only added to the prompt when translating into German. For any other target language, it's omitted entirely.
- Message:
-
User Role message with a Condition (extra context sent only for a specific source language):
- Message:
Additional context: this content is UI microcopy. Keep translations concise. - Condition:
source_language == "en" - Effect: this message is only sent to the LLM when the source language is English. For any other source language, it's omitted.
- Message:
For more information, including supported condition syntax and placeholders, see Conditions and Placeholders in LLM Prompts.
Step 4: Test the prompt
Once you've entered your translation prompt, use the Testing Prompt section to check that it produces the results you expect. Click the blue section icon to expand it, then generate a test translation for one or multiple sample strings.
Under Testing Prompt, enter the following:
- Source Locale and Target Locale: the language pair you want a test translation for, selected from the dropdown menus.
-
Linguistic Package: if you're using Assets References for prompt tooling with RAG, specify which Linguistic Package to reference for glossary terms and/or translation memory examples.
- This selection only applies for testing. For translations within a Smartling project, the project's own Linguistic Package is used. For translations through Smartling's Instant MT integrations or MT API, the Linguistic Packages selected in Step 2 are applied instead.
-
Test Source String: add up to 5 strings (click the + icon to add another), using strings that represent your real source content well.
- If you add multiple test strings, they're sent to the LLM as a batch, mimicking an actual translation request. See String batching for details.
Once you've entered your test data, click Run to get a test translation using your selected provider and prompt.
If any issues are detected with your configuration, an error message will be shown. Make sure all information has been entered correctly.
Output
If no issues are detected, the test translation appears under Output, in the "Translation" field.
A separate tab shows the Rendered Prompt: the full System Role and User Role messages exactly as sent to the LLM, including any metadata, asset references, and applied conditions. Open it in a pop-up window for better readability.
Step 5: Save the profile
Click Create to save the LLM Profile. It's now created and can be accessed anytime from the Profiles tab under the AI Hub.
Want to further refine your translation results? See Step 6 (Optional): Additional customization below.
We recommend monitoring translations regularly to check whether the translation prompt or any parameters need adjusting.
Step 6 (Optional): Additional customization
Once your LLM Profile is up and running, you can further refine its output for an even more tailored result.
- AI Toolkit: an optional add-on with features like the AI Post-Editing Agent, Language Quality Estimation Agent, AI Formality Adjustment, and AI Adaptive TM, to further optimize output and workflow routing. See AI Toolkit and Translating with LLMs in Smartling for details.
- AI-Enhanced Glossary Term Insertion: RAG can reference your glossary terms as suggestions, but doesn't guarantee the LLM will apply them. Enabling AI-Enhanced Glossary Term Insertion for your translation workflow can act as a safety net by inserting qualifying glossary terms that RAG may have referenced but didn't apply. Results are never 100% guaranteed due to the nature of LLMs, including the possibility of false positives or hallucinations.
- TM Match Insertion: RAG can reference TM matches as examples, but it does not guarantee that they will be reused. Enabling Translation Memory Match Insertion, with a high enough match threshold, uses an existing TM match instead of an LLM where available, providing greater consistency with past translations. It also saves costs, since inserted TM matches do not count toward your AI Hub usage.
Use an LLM Profile to translate content
Once the LLM Profile has been fully configured, you can use it to translate your content, either within the Smartling platform (using an MT workflow or MT suggestions in the CAT Tool) or through one of the integrations and APIs included with Smartling's AI Hub, to display machine translations directly where needed.
- LLM Profiles can be used as a translation provider in a machine translation workflow.
Machine translation workflows let you translate any content in the Smartling platform, using your preferred provider and configurations. For more information, see Setting Up a Machine Translation Workflow.
- LLM Profiles can be used to translate content with Smartling's MT API or one of Smartling's Instant MT integrations, to provide LLM translations directly where they should be displayed, without first uploading the content into the Smartling platform.
To select the LLM Profile for each of these integrations, navigate to the Instant MT tab of the AI Hub, then click into the relevant tab for your integration.
- LLM Profiles can be used to provide translation suggestions in the CAT Tool.
To select the LLM Profile for translation suggestions in the CAT Tool, navigate to the Instant MT tab of the AI Hub, then click into the CAT Tool tab.
Manage LLM Profiles
Edit
To edit an existing LLM Profile, including its credentials, settings, and prompt:
- From the AI Hub, click into the Profiles tab.
- Click the name of the LLM Profile you want to edit.
- The Edit LLM Profile dialog appears, where you can edit and test the Profile's credentials and adjust your prompt.
Delete
To delete an LLM Profile that isn't currently assigned to a workflow:
- From the AI Hub, click into the Profiles tab.
- Next to the LLM Profile you want to delete, click the ellipsis (…) under Actions.
- Select the action Delete Profile.
You cannot delete an LLM Profile that is assigned to a workflow. You need to reassign the workflow step to another translation option. If you unassign an LLM Profile while translations are in progress, translation progress will stop. The translations will remain in the translation step until the step is reassigned.