-
Notifications
You must be signed in to change notification settings - Fork 19
Closed
Labels
enhancementNew feature or requestNew feature or requestgoPull requests that update go codePull requests that update go codegood first issueGood for newcomersGood for newcomershacktoberfestEligible for HacktoberfestEligible for Hacktoberfest
Description
Feature Description
Create a unified LLM interface to standardize how different AI providers are integrated, making it easier to add new providers and maintain existing ones.
Problem It Solves
Currently, the codebase handles multiple LLM providers (Google Gemini, Grok, ChatGPT) using repetitive if-else logic in main.go:
Problems with Current Approach:
❌ Repetitive Code - Similar if-else blocks for API key validation and provider selection
❌ Hard to Maintain - Adding a new provider requires changes in multiple places
❌ Not Scalable - Each new provider adds more complexity
❌ Tight Coupling - Main function is tightly coupled to all provider implementations
❌ No Abstraction - No common contract for providers to follow
❌ Difficult Testing - Hard to mock providers for unit tests
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requestgoPull requests that update go codePull requests that update go codegood first issueGood for newcomersGood for newcomershacktoberfestEligible for HacktoberfestEligible for Hacktoberfest