llmprogram 0.1.0

A Rust library that provides a structured and powerful way to create and run programs that use Large Language Models (LLMs). It uses a YAML-based configuration to define the behavior of your LLM programs, making them easy to create, manage, and share.
Documentation
# Changelog

All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [0.1.0] - 2023-XX-XX

### Added

- Initial release of llmprogram
- YAML-based LLM program definition
- Input/output validation with JSON schemas
- Tera templating for dynamic prompts
- OpenAI API integration
- Redis caching support
- SQLite logging of program executions
- Analytics tracking with comprehensive metrics
- Streaming responses support
- Batch processing capabilities
- CLI with commands:
  - `run` - Execute programs (single and batch mode)
  - `generate-yaml` - Generate program definitions using AI
  - `analytics` - Show analytics data
  - `generate-dataset` - Create training datasets
- Comprehensive examples and documentation