Skip to main content

๐Ÿ’ฌ Chatbot

The Oracle AI Optimizer and Toolkit (the AI Optimizer) provides an interactive workbench for exercising its agents, flows, and AI tools. Use the Chatbot to compare model settings, prompts, and tool configurations before deploying an application.

Each Chatbot turn follows the runtime route selected by Tool Selection. The selected language model may generate the answer directly, choose tool calls as an agent, or participate in a Vector Search flow.

Agentic Routesโ€‹

Tool selectionRuntime routeHow the request is handled
No toolsLLM-only AgentThe model generates an answer using the selected system prompt and optional conversation history.
NL2SQLNL2SQL AgentThe model selects from the restricted SQLcl MCP tools needed to connect, inspect schema, run a query, and check its status.
Vector SearchVector Search FlowThe flow can rephrase the question, discover a store, retrieve documents, grade relevance, and generate an answer.
Both toolsCombined RouterA classifier chooses a route or runs both routes and asks the model to synthesize the results.

For implementation details, see Agents and Flows.

History and Contextโ€‹

Interactions with the AI models are stored as conversation history in the model's context window. When History and Context is enabled, previous interactions from enabled turns are provided to the model so that it can use them to guide the next response. When History and Context is disabled, only the current user input is provided.

History and Context

Use the "Clear" button to reset the "context window" and start a fresh interaction with a model.

Language Model Parametersโ€‹

Language model parameter controls in the Chatbot

You can select from enabled models to experiment with. To enable, disable, or add models, use the Configuration - Models page. Choose a language model based on your requirements, which may include:

Privacy Concerns - Locally run, open-source models offer more control over your data.

Accuracy & Knowledge - Some models excel in factual correctness. When using Retrieval-Augmented Generation, grounding responses in retrieved sources can reduce the importance of a model's built-in knowledge.

Speed & Efficiency - Smaller models run faster and require fewer resources. When using Retrieval-Augmented Generation, a smaller model with good natural-language capabilities can be more useful than a larger model with extensive built-in knowledge.

Cost & Accessibility - Some models are free, cheaper, or available for local use.

Once you've selected a model, you can change its parameters to control behavior such as response length, creativity, and repetition. Hover over the help icon next to a parameter for more information. Here are some general guidelines:

Response Length & Repetition - Maximum Output Tokens controls the maximum response length, while Frequency Penalty discourages repeated words and phrases.

Creativity - Temperature and Top P influence how unpredictable or original the model's output is. Higher values make responses more varied; lower values make them more focused.

Novelty - Presence Penalty encourages the model to introduce new topics or ideas rather than repeat those already mentioned.

For more details on the parameters, ask the Chatbot or review Concepts for Generative AI.

Toolkitโ€‹

Vector Search and NL2SQL tools in the Chatbot

The AI Optimizer provides MCP tools and runtime routes that ground model responses in your proprietary data, including:

  • Vector Search for unstructured data
  • NL2SQL for interacting with structured data using natural language
Vector Search options in the Chatbot

Once you've created embeddings using Split/Embed, the Vector Search tool is available. After selecting Vector Search, you can configure the following options:

  • Store Discovery: Dynamically discover vector stores for Retrieval-Augmented Generation.
  • Prompt Rephrase: Rephrase the user prompt, based on context and history, for a more meaningful vector search.
  • Document Grading: Grade vector search results to determine their relevance. Results judged irrelevant are not used to generate the response.

Vector Storeโ€‹

When Store Discovery is enabled, the AI Optimizer identifies vector stores to use for each search. To use a specific Vector Store instead, disable Store Discovery and select the Vector Store options manually. To choose a different Vector Store, click the "Reset" button to clear the current selections and display the available options.

Chatbot Vector Search

Choose the type of search to perform and its additional parameters.

NL2SQL (Natural Language to SQL)โ€‹

The Natural Language to SQL (NL2SQL) agent enables users to query structured data stored in Oracle AI Database by using natural language instead of SQL statements.

The AI Optimizer uses a local SQLcl MCP proxy for NL2SQL. Container installations include SQLcl and register the proxy automatically at startup. For bare-metal installations, install SQLcl so that the sql command is available on PATH. The NL2SQL agent then selects the SQLcl tools it needs for the request.

โญ๏ธ For more information about SQLcl and its MCP capabilities, see the Oracle SQLcl MCP server documentation.

To enable NL2SQL, configure and select a database with valid credentials in Configuration โ†’ Databases. The NL2SQL agent becomes available when both the database connection and SQLcl proxy are available. You can then issue natural language queries against structured data, such as the dataset shown in the example below:

Customer Data

To use the agent, navigate to Chatbot, select NL2SQL under Tool Selection, and enter a query such as:

Can you give me the list of customers?

The agent's answer is based on a SQL query executed against the database:

NL2SQL Example

By using this agent, the AI Optimizer allows users to query structured data without writing any SQL code, simplifying data access and exploration.

You can experiment freely with your own structured datasets and progressively issue more complex natural language queries to explore the full capabilities of the NL2SQL agent.