- Summary
- CI Status
- Documentation
- Requirements
- Ansible Version Compatibility
- Included Content
- Installing This Collection
- Using This Collection
- Contributing to This Collection
- Testing
- Code of Conduct
- 🛡Identity & Maintainer
- More Information
The Ansible dettonville.llm collection includes plugins and modules designed to integrate Large Language Models (LLMs) and local AI services into Ansible playbooks. This collection provides tools to streamline AI-driven workflows, manage models, and query LLM APIs with a focus on simplicity and reliability.
The compiled HTML documentation for this collection is available at:
https://dettonville.github.io/ansible-llm/
The host running the tasks must have the python requirements described in requirements.txt. Once the collection is installed, you can install them into a python environment using pip: pip install -r requirements.txt
This collection has been tested against the following Ansible versions: >=2.16.0.
Plugins and modules within a collection may be tested with only specific Ansible versions. A collection may contain metadata that identifies these versions. PEP440 is the schema used to describe the versions of Ansible.
| Documentation | Source code | Description |
|---|---|---|
| hf_download | hf_download.py | Downloads models, datasets, or specific files from Hugging Face Hub using the huggingface_hub library. |
| llama_api | llama_api.py | Checks health, models, server properties, and slots from a specified llama.cpp server endpoint. |
| ollama_api | ollama_api.py | Provides capabilities to list available models, check running models (ps), pull (download), sync, and remove models from a specified Ollama endpoint. |
| vllm_api | vllm_api.py | Checks health, models, version, and metrics from a specified vLLM server endpoint. |
You can install the dettonville.llm collection with the Ansible Galaxy CLI:
ansible-galaxy collection install dettonville.llm
You can also include it in a requirements.yml file and install it with
ansible-galaxy collection install -r requirements.yml, using the format:
---
collections:
- name: dettonville.llm- Using collections in the Ansible documentation for more details.
This collection is intended for LLM and AI integration plugins and modules. Simple plugin examples should be generic in nature. More complex examples can include real-world platform modules to demonstrate the utility of the plugin in a playbook.
We welcome community contributions to this collection. If you find problems, please open an issue or create a PR against the dettonville.llm collection repository. See Contributing to Ansible-maintained collections for complete details.
See the Ansible Community Guide for details on contributing to Ansible.
All releases will meet the following test criteria:
- 100% success for Unit tests.
- 100% success for Sanity tests as part of ansible-test.
- 100% success for ansible-lint.
- Include unit tests with all PRs. PRs should not decrease code coverage.
- Filter plugins should be 1 per file, with an included DOCUMENTATION string, or reference a lookup plugin with the same name.
See the TESTING.md for information on how to run the necessary tests.
This collection follows the Ansible project's Code of Conduct. Please read and familiarize yourself with this document.
- Maintainer: Lee Johnson
- Contact: ljohnson@dettonville.org
- LinkedIn: https://www.linkedin.com/in/leejjohnson/
- System Framework: Dettonville Cloud Infrastructure Services
- Dettonville Cloud Infrastructure Services
- Dettonville Utils Collection
- Dettonville Git Inventory Collection
- Ansible Datacenter Site Example - An actual datacenter site.yml repository featuring roles that demonstrate practical usage of the collection modules.
- Ansible Collection Overview
- Ansible User Guide
- Ansible Developer Guide
- Ansible Community Code of Conduct