Expand description
🚀 llm-chain 🚀
llm-chain
is the ultimate toolbox for developers looking to supercharge their applications with the power of Large Language Models (LLMs)! 🎉
This versatile crate lets you chain together LLMs, making it incredibly useful for:
- Effortlessly summarizing lengthy documents 📚
- Allow your bots to interact with the environment using tools.
- Seamlessly chaining together multiple prompts to tackle complex tasks.
- ChatGPT model support
- LLaMA model support
And that’s not all! llm-chain
is also your best friend when it comes to creating and managing prompts for LLMs. Say goodbye to hassle and bloated syntax! Quickly create and manage prompts with our intuitive templating system, and let llm-chain
handle the rest! 🤩
Keep in mind that this crate is a library, which means it doesn’t include any LLMs out of the box. But fear not! We also offer the llm-chain-openai crate, which brings the power of OpenAI’s LLMs right to your fingertips! 🪄 We recommend starting with that crate to make the most of llm-chain
. 😉
So, buckle up and dive into the amazing world of LLMs! Unlock the full potential of your applications with llm-chain
and watch them soar! 🌈💥
To help you get started, we’ve prepared a comprehensive tutorial that will guide you through the process of using llm-chain
. The tutorial covers everything from installation to advanced usage, so you’ll be well-equipped to make the most of this powerful toolbox.
Happy coding, and may your LLM adventures be both exciting and productive! 🥳🚀
Re-exports
pub use parameters::Parameters;
pub use text_splitter::NaiveWhitespaceSplitter;
pub use text_splitter::TextSplitter;
pub use prompt::PromptTemplate;
pub use prompt::PromptTemplateError;
Modules
- Chains are multi-step modes of execution for LLMs such as Sequential or MapReduce.
- Utilities for working with executors
- A frame is the combination of a
Step
and anExecutor
. It wraps common behavior used by different chain types. - Module modeling the outputs from LLMs
- Parameters are used to pass data steps of the chain. This module implements them.
- Functions for parsing the output of LLMs, including YAML and Markdown.
- Prompts module
- Schema for Documents that can be stored in vector stores.
- Envelope Serialization
- Steps are indivudaul LLM invocations in a chain. They are a combination of a prompt and a configuration.
- Opinionated text summarization functionality
- TextSplitters break text small enough parts to be fed to the model.
- Tokens Module
- Tool Access Module
- Traits Module
- Vector stores store vectors for embeddings which are then used to find similar documents
Macros
- A macro that creates a new executor for a specified model.
- A macro that creates a new
Parameters
instance with the provided key-value pairs. - Creates a
TextPrompt
or aChatPrompt
based on the number of arguments provided.