Skip to content

[0.2.0v][Feature] OpenAI provider support for embeddings and LLM #42

@Kavirubc

Description

@Kavirubc

Overview

Add OpenAI as an alternative AI provider alongside Gemini, so users who don't have a Gemini API key can use Simili-Bot with OpenAI instead.

Scope

  • Auto-select provider based on available API keys (GEMINI_API_KEY preferred, OPENAI_API_KEY as fallback)
  • Support OPENAI_API_KEY across all workflow examples and docs
  • Update embedder and LLM client initialisation to be provider-agnostic
  • Update .env.sample, simili.yaml examples, and setup guides to document both providers
  • Clarify supported embedding models and their dimensions per provider

Acceptance Criteria

  • At least one of GEMINI_API_KEY or OPENAI_API_KEY must be set (validated at startup)
  • Gemini is preferred when both keys are present
  • Default OpenAI models documented (text-embedding-3-small for embeddings)
  • All existing tests pass with the new provider abstraction
  • No breaking changes for existing Gemini-only users

Notes

Extracted from PR #40. Implementation reference: nick1udwig/simili-bot@index-and-query-prs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    coreRelated to core engineenhancementNew feature or request

    Projects

    Status

    Done

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions