aquanet-bot-lib
Version:
A library for building aquaculture chatbots with LLM integration
136 lines (111 loc) • 3.62 kB
Markdown
# Aquanet Bot Library
A powerful library for building aquaculture chatbots with LLM integration. This library provides a comprehensive set of tools for analyzing water quality, diagnosing diseases, optimizing feeding, predicting growth, analyzing costs, and more.
## Features
- 🌊 **Water Quality Analysis**: Analyze water parameters and get recommendations
- 🦐 **Disease Diagnosis**: Identify potential diseases and get treatment suggestions
- 🍽️ **Feeding Optimization**: Optimize feeding strategies for better growth
- 📈 **Growth Prediction**: Predict growth rates based on environmental conditions
- 💰 **Cost Analysis**: Analyze operational costs and get optimization suggestions
- 🔧 **Technical Advice**: Get expert advice on farm management
- 📊 **Market Analysis**: Analyze market trends and pricing strategies
- 🌿 **Environmental Impact**: Assess environmental impact and sustainability
## Installation
```bash
npm install aquanet-bot-lib
# or
yarn add aquanet-bot-lib
# or
pnpm add aquanet-bot-lib
```
## Quick Start
```typescript
import { AquacultureService, LLMProviders } from 'aquanet-bot-lib';
// Initialize the service
const service = new AquacultureService({
provider: LLMProviders.DEEPSEEK,
apiKey: 'your-api-key',
model: 'deepseek-chat',
defaultParams: {
temperature: 0.7,
maxTokens: 2000,
}
});
// Example data
const data = {
environmentalData: {
waterQuality: {
temperature: 28,
pH: 7.5,
dissolvedOxygen: 5.2,
}
},
biologicalData: {
species: 'shrimp',
stage: 'juvenile',
},
metadata: {
farmId: 'farm-123',
pondId: 'pond-456',
timestamp: new Date(),
source: 'sensor'
}
};
// Analyze water quality
const result = await service.analyzeWaterQuality(data);
console.log(result);
// Get disease diagnosis
const diagnosis = await service.diagnoseDiseases(data);
console.log(diagnosis);
```
## API Reference
### AquacultureService
The main class for interacting with the aquaculture analysis features.
#### Constructor
```typescript
constructor(config: LLMConfig)
```
- `config`: Configuration object for the LLM provider
- `provider`: LLM provider (currently supports DEEPSEEK)
- `apiKey`: API key for the provider
- `model`: Model name to use
- `defaultParams`: Default parameters for the model
#### Methods
- `analyzeWaterQuality(data: AquacultureData): Promise<string>`
- `diagnoseDiseases(data: AquacultureData): Promise<string>`
- `optimizeFeeding(data: AquacultureData): Promise<string>`
- `predictGrowth(data: AquacultureData): Promise<string>`
- `analyzeCosts(data: AquacultureData): Promise<string>`
- `getTechnicalAdvice(data: AquacultureData): Promise<string>`
- `analyzeMarket(data: AquacultureData): Promise<string>`
- `assessEnvironmentalImpact(data: AquacultureData): Promise<string>`
### Data Types
```typescript
interface AquacultureData {
environmentalData: {
waterQuality: {
temperature: number;
pH: number;
dissolvedOxygen: number;
[key: string]: any;
};
[key: string]: any;
};
biologicalData: {
species: string;
stage: string;
[key: string]: any;
};
metadata: {
farmId: string;
pondId: string;
timestamp: Date;
source: string;
[key: string]: any;
};
[key: string]: any;
}
```
## Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
## License
MIT License - see the [LICENSE](LICENSE) file for details.