Skip to content

Version 0.1.11-alpha: Gemini & Groq Integration

Latest

Choose a tag to compare

@presstab presstab released this 15 Aug 21:01
· 4 commits to master since this release
30222f2

This release introduces support for two new major LLM providers, Google Gemini and Groq, significantly expanding the range of available models. The developer experience is also improved with the introduction of an automated CI/CD testing pipeline and a comprehensive overhaul of the test suite.

New Features & Enhancements

  • Google Gemini & Groq Support: The application now integrates with the Google Gemini and Groq APIs. Users can configure their API keys to access models such as gemini-2.5-pro, gemini-2.5-flash, and Groq's moonshotai/kimi-k2-instruct. The venice provider has been removed.
  • New Dependencies: To support these new features, several packages have been added, including google-genai, textual[syntax], tiktoken, pyperclip, ddgs, and markdownify.

A Closer Look at the Changes

  • LLM Provider Integration:

    • Configuration for Gemini and Groq providers has been added to api_providers.json, along with corresponding updates to the default model_list.json.
    • Client initialization for the Gemini API has been implemented, with the google-genai dependency handled gracefully if not installed.
    • A new service was created to fetch available models directly from the Gemini API, supplementing the data with cost and context details from external sources.
  • Streaming Logic Refactoring:

    • The core LLM streaming logic in llm_requests.py has been refactored for better modularity.
    • Provider-specific streaming implementations for OpenAI, Anthropic, and the new Gemini service are now organized in the src/jrdev/services/streaming/ directory. This architecture simplifies maintenance and makes it easier to add new providers in the future.
  • CI/CD and Testing Overhaul:

    • A new GitHub Actions workflow (pytest.yml) has been added to automatically run the test suite on every push and pull request across Python versions 3.9 through 3.12. This ensures code quality and compatibility.
    • The test suite has been significantly improved by removing several outdated test scripts and adding new, robust unit tests for configuration (test_config.py), Git utilities (test_git_utils.py), and string manipulation functions (test_string_utils.py).
  • Code Refinements & Bug Fixes:

    • Improved the logic for adding entries to .gitignore to ensure correct newline handling.
    • Enhanced the accuracy of token count estimation displayed in the terminal UI by rebuilding the full prompt context.
    • Updated various type hints for better code clarity and compatibility with older Python versions.
  • Documentation:

    • A new AGENTS.md file provides a technical guide to the codebase architecture and development conventions, intended for both human developers and AI agents interacting with the project.
      Generated by JrDev AI using gemini-2.5-pro