providers/groq/groq library
Modular Groq Provider
This library provides a modular implementation of the Groq provider
Key Benefits:
- Single Responsibility: Each module handles one capability
- Easier Testing: Modules can be tested independently
- Better Maintainability: Changes isolated to specific modules
- Cleaner Code: Smaller, focused classes
- Reusability: Modules can be reused across providers
- Speed Optimized: Groq is known for fast inference
Usage:
import 'package:llm_dart/providers/groq/groq.dart';
final provider = GroqProvider(GroqConfig(
apiKey: 'your-api-key',
model: 'llama-3.3-70b-versatile',
));
// Use chat capability
final response = await provider.chat(messages);
Classes
- GroqChat
- Groq Chat capability implementation
- GroqChatResponse
- Groq chat response implementation
- GroqClient
- Core Groq HTTP client shared across all capability modules
- GroqConfig
- Groq provider configuration
- GroqProvider
- Groq provider implementation
Functions
-
createGroqChatProvider(
{required String apiKey, String model = 'llama-3.3-70b-versatile', String? systemPrompt, double? temperature, int? maxTokens}) → GroqProvider - Create a Groq provider for chat
-
createGroqCodeProvider(
{required String apiKey, String model = 'llama-3.1-70b-versatile', String? systemPrompt, double? temperature, int? maxTokens}) → GroqProvider - Create a Groq provider for code generation
-
createGroqFastProvider(
{required String apiKey, String model = 'llama-3.1-8b-instant', String? systemPrompt, double? temperature, int? maxTokens}) → GroqProvider - Create a Groq provider for fast inference
-
createGroqProvider(
{required String apiKey, String? model, String? baseUrl, int? maxTokens, double? temperature, String? systemPrompt, Duration? timeout, bool? stream, double? topP, int? topK, List< Tool> ? tools, ToolChoice? toolChoice}) → GroqProvider - Create a Groq provider with default configuration
-
createGroqVisionProvider(
{required String apiKey, String model = 'llava-v1.5-7b-4096-preview', String? systemPrompt, double? temperature, int? maxTokens}) → GroqProvider - Create a Groq provider for vision tasks