test/live-tests#66
Open
DYung26 wants to merge 71 commits into
Open
Conversation
…LLM` querying with strategy-based execution, parallel model handling, multimodal message building, and weighted model scoring
…coding functions for `matplotlib` integration
…, performance, and fallback options
…on with key validation and model listing
…` models with endpoint, key validation, and model listing
… list_models, and validate_key methods
…orting text and multimodal queries with validation
… validation and supported models listing
…point with query, list_models, and key validation
…Ollama` models with query and validation
…th query, list_models, and key validation
…PI` with query, list_models, and key validation
…providers, manage `API` keys, and handle queries
…odels with iteration-based escalation
…order until success, with optional success tracking
…ghest-performance models with fallback to lower tiers
…l models for balanced usage
… provider/model pairs with iteration-aware selection
…ace` and `ProviderManager` with strategy-based model selection, remove `Groq`-specific hardcoding, and unify image handling
…ine to comply with `PEP8` formatting
…add new `AI/LLM` packages; update `setup.py` to read `README` safely and include additional dependencies
… license, and examples to `v0.1.3`
…arams (strategy, models, iterations, interactivity, timeout)
…d plot generation and validation system
…otlib plot mappings for common chart types
…te and grouped categorical plots
…ouped data handling
…riable visualization
…ation, validation, and retrieval
… switch to registry-based unified plotgen `API` using `Basic/Smart` generators
…filing and variable-type detection
…egation and recommendation refinement
…t generation based on dataframe schema
… into structured visualization recommendations
…ting model querying, parsing, and ensemble scoring
… for external access
…gic to dedicated `recommender` module - Removed the inlined `VisualizationRecommender` class from `suggestions.py` and imported it from `visual_suggestion.recommender` - Simplified `suggestions.py` to serve as a lightweight interface for visualization recommendation - Updated `__init__.py` imports to correctly expose `VisualizationRecommender` from its new package - Enhanced `recommender()` function to support: - `StrategyName` parameter for configurable model selection strategy - `selected_models`, `interactive`, and `timeout` arguments for flexible runtime behavior - Improved module clarity and reduced redundancy by centralizing model, API, and ensemble logic under the recommender system
…eration with inline image streaming
… synthesis with streaming support
…tgen extensions, and message orchestration
…ining chat, audio, file, and realtime clients
…tool OpenAI function calling (plotgen, explainer, recommender)
…t` assistant with user instruction injection
…me session keys via `OpenAI API`
…ents for chat and audio responses
…nd `SmartPlotGenerator`, replacing deprecated `PlotGenerator`
… `PlotExplainer` and explainer `API` coverage
…icPlotGenerator`, `SmartPlotGenerator`, and `plotgen` integration tests
…`VisualizationRecommender` initialization, parsing, and `LLM` integration
…est_suggestions` into `test/unit` for clearer test structure organization
…ner` run with `Groq` and `OpenAI` models
…nd custom plot generation examples
…g with multiple `LLM` providers
b23aa8b to
82adffb
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request introduces major enhancements to the PlotSense package, focusing on expanding AI model integration, improving documentation, and updating dependencies. The most significant changes include adding support for multiple large language model (LLM) providers (Groq, Anthropic, Gemini, Azure OpenAI), updating the documentation to reflect new features and workflows, and increasing the minimum required version for several dependencies. Additionally, the package metadata and licensing have been updated, and new modules and test files have been added to the codebase.
AI Model Integration
GroqProvider,AnthropicProvider,GeminiProvider, andAzureOpenAIProvider, each with methods for querying, listing models, and validating API keys. This enables PlotSense to leverage a broader range of AI models for plot suggestions and explanations. [1] [2] [3] [4] [5]core/enums/strategy.pyto support flexible model selection strategies.Documentation and API Usability
PKG-INFO) to reflect new features, including one-click plot generation, expanded explanation workflow, combined suggest-plot-explain pipeline, and improved sample code and outputs. [1] [2] [3]Dependency and Metadata Updates
matplotlibto 3.8.0 and added new dependencies:python-dotenv,groq,anthropic,openai,google-genai, andrequests. Updated license to Apache License 2.0 and expanded author information. [1] [2] [3]Codebase Structure
Miscellaneous
LICENCEandNOTICEfiles to the source distribution for compliance.These updates collectively make PlotSense more powerful, flexible, and easier to use for AI-powered data visualization and explanation workflows.