Class BBjAdminAIConfig

java.lang.Object
com.basis.api.admin.BBjAdminAIConfig
All Implemented Interfaces:
Serializable

public class BBjAdminAIConfig extends Object implements Serializable
Configuration for the Basis AI natural-language-to-SQL library.

Use the provider constants to choose an LLM back-end, then configure the matching nested config object:

 BBjAdminAIConfig cfg = new BBjAdminAIConfig();
 cfg.setActiveProvider(BBjAdminAIConfig.PROVIDER_OPENAI);
 cfg.getOpenai().setApiKey("sk-...");
 cfg.getOpenai().setModelName("gpt-4o");
 cfg.getLucene().setIndexPath("/var/bbj/ai-index");
 

Credential values written to disk via BBjAdminAI.saveConfig() / BBjAdminAI.saveConfig(String) are encrypted with AES-256-GCM before being stored.

See Also:
  • Field Details

    • PROVIDER_OPENAI

      public static final String PROVIDER_OPENAI
      OpenAI ChatGPT models (gpt-4o, gpt-4o-mini, …).
      See Also:
    • PROVIDER_GEMINI

      public static final String PROVIDER_GEMINI
      Google AI Gemini models (gemini-2.0-flash, gemini-1.5-pro, …).
      See Also:
    • PROVIDER_ANTHROPIC

      public static final String PROVIDER_ANTHROPIC
      Anthropic Claude models (claude-3-5-sonnet-…, …).
      See Also:
    • PROVIDER_GITHUB_COPILOT

      public static final String PROVIDER_GITHUB_COPILOT
      GitHub Models via OpenAI-compatible API. Requires a GitHub personal access token with models:read permission.
      See Also:
  • Constructor Details

    • BBjAdminAIConfig

      public BBjAdminAIConfig()
  • Method Details

    • getActiveProvider

      public String getActiveProvider()
      Returns the active LLM provider name. Matches one of the PROVIDER_* constants defined on this class.
    • setActiveProvider

      public void setActiveProvider(String activeProvider)
      Sets the active LLM provider. Use one of the PROVIDER_* constants defined on this class (e.g. PROVIDER_OPENAI).
    • getOpenai

      public BBjAdminAIConfig.OpenAI getOpenai()
      Returns the OpenAI provider configuration block.
    • setOpenai

      public void setOpenai(BBjAdminAIConfig.OpenAI openai)
    • getAnthropic

      public BBjAdminAIConfig.Anthropic getAnthropic()
      Returns the Anthropic provider configuration block.
    • setAnthropic

      public void setAnthropic(BBjAdminAIConfig.Anthropic anthropic)
    • getGemini

      public BBjAdminAIConfig.Gemini getGemini()
      Returns the Google Gemini provider configuration block.
    • setGemini

      public void setGemini(BBjAdminAIConfig.Gemini gemini)
    • getGithubCopilot

      public BBjAdminAIConfig.GitHubCopilot getGithubCopilot()
      Returns the GitHub Copilot / GitHub Models provider configuration block.
    • setGithubCopilot

      public void setGithubCopilot(BBjAdminAIConfig.GitHubCopilot githubCopilot)
    • getLucene

      public BBjAdminAIConfig.Lucene getLucene()
      Returns the schema vector store configuration block.
    • setLucene

      public void setLucene(BBjAdminAIConfig.Lucene lucene)
    • getSqlSystemPrompt

      public String getSqlSystemPrompt()
      Returns the system prompt prepended to every SQL-generation (BBjAdminAI.buildQuery(java.lang.String)) call. Override to inject database-specific hints or dialect notes.
    • setSqlSystemPrompt

      public void setSqlSystemPrompt(String sqlSystemPrompt)
    • getGeneralSystemPrompt

      public String getGeneralSystemPrompt()
      Returns the default system prompt used for general (BBjAdminAI.sendPrompt(String)) calls.
    • setGeneralSystemPrompt

      public void setGeneralSystemPrompt(String generalSystemPrompt)