Skip to content

feat/multi provider support#1

Merged
DYung26 merged 23 commits into
mainfrom
feat/multi-provider-support
Oct 31, 2025
Merged

feat/multi provider support#1
DYung26 merged 23 commits into
mainfrom
feat/multi-provider-support

Conversation

@DYung26
Copy link
Copy Markdown
Owner

@DYung26 DYung26 commented Oct 31, 2025

This pull request introduces major updates to the PlotSense package, focusing on expanding AI provider support, updating documentation, and improving package metadata and dependencies. The most significant changes include the addition of new LLM provider integrations (Groq, Anthropic, Gemini, and Azure OpenAI), enhancements to the documentation and usage examples, and updates to package requirements and author/license information.

AI Provider Integrations

  • Added new provider classes for Groq (plotsense/core/providers/groq.py), Anthropic (plotsense/core/providers/anthropic.py), Gemini (plotsense/core/providers/gemini.py), and Azure OpenAI (plotsense/core/providers/azure_openai.py), all inheriting from a new abstract base class LLMProvider (plotsense/core/providers/base.py). These classes support querying, model listing, and API key validation for each respective service. [1] [2] [3] [4] [5]

  • Introduced a new StrategyName enum to support future provider selection strategies (plotsense/core/enums/strategy.py).

Documentation and Usage Improvements

  • Expanded the PKG-INFO documentation with new usage examples for plot generation (plotgen), improved explanation workflow, and a combined workflow for suggest → plot → explain. Updated sample outputs and added a feedback form link. [1] [2] [3] [4]

Package Metadata and Requirements

  • Updated package metadata: new version (0.1.3), expanded author list, changed license to Apache License 2.0, and revised homepage/documentation links. [1] [2]
  • Added new dependencies for AI providers (groq, anthropic, openai, google-genai, python-dotenv, requests) and updated minimum required version for matplotlib to 3.8.0. [1] [2]

Source and Test Structure

  • Added new source files for provider integrations, plot generation, and suggestion modules in SOURCES.txt, and included new test files for expanded coverage. [1] [2] [3]

Minor API and Import Updates

  • Updated main package imports in plotsense/__init__.py to ensure new modules are available.

These changes significantly enhance PlotSense's flexibility and capability to interact with multiple AI providers, improve user experience through better documentation, and ensure the package is up to date with modern requirements.

…LLM` querying with strategy-based execution, parallel model handling, multimodal message building, and weighted model scoring
…coding functions for `matplotlib` integration
…` models with endpoint, key validation, and model listing
…orting text and multimodal queries with validation
…point with query, list_models, and key validation
…th query, list_models, and key validation
…PI` with query, list_models, and key validation
…providers, manage `API` keys, and handle queries
…order until success, with optional success tracking
…ghest-performance models with fallback to lower tiers
… provider/model pairs with iteration-aware selection
…ace` and `ProviderManager` with strategy-based model selection, remove `Groq`-specific hardcoding, and unify image handling
…add new `AI/LLM` packages; update `setup.py` to read `README` safely and include additional dependencies
…arams (strategy, models, iterations, interactivity, timeout)
@DYung26 DYung26 merged commit e26565e into main Oct 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant