Drone Capability Parser
drone-capability-parser is a lightweight Python package that extracts structured summaries of a drone’s operational capabilities from free‑form textual descriptions.
It automatically identifies locomotion methods (e.g., wheeled movement, flight) and unified actuation systems, delivering a clean, standardized output for engineers and designers.
Installation
pip install drone_capability_parser
Quick Start
from drone_capability_parser import drone_capability_parser
# Basic usage – let the library create the default LLM7 client for you
text = """
The new Explorer drone can roll on its six wheeled chassis at up to 15 km/h,
while its rotors enable vertical take‑off and hover for 30 minutes.
All motion is coordinated through a unified actuation controller.
"""
caps = drone_capability_parser(user_input=text)
print(caps)
# -> ['locomotion: wheeled, speed: 15 km/h', 'locomotion: flight, hover_time: 30 min', ...]
Function signature
drone_capability_parser(
user_input: str,
llm: Optional[BaseChatModel] = None,
api_key: Optional[str] = None,
) -> List[str]
| Parameter | Type | Description |
|---|---|---|
user_input |
str |
The free‑form description of the drone design you want to parse. |
llm |
Optional[BaseChatModel] |
A LangChain LLM instance. If omitted, the function creates a ChatLLM7 client automatically. |
api_key |
Optional[str] |
API key for the LLM7 service. If omitted, the function reads the LLM7_API_KEY environment variable, or falls back to a placeholder "None" (which triggers the default free‑tier limits). |
Using a Custom LLM
You can plug any LangChain‑compatible chat model that inherits from BaseChatModel.
Below are a few examples:
OpenAI (langchain-openai)
from langchain_openai import ChatOpenAI
from drone_capability_parser import drone_capability_parser
llm = ChatOpenAI(model="gpt-4o-mini")
response = drone_capability_parser(user_input=text, llm=llm)
Anthropic (langchain-anthropic)
from langchain_anthropic import ChatAnthropic
from drone_capability_parser import drone_capability_parser
llm = ChatAnthropic(model="claude-3-haiku-20240307")
response = drone_capability_parser(user_input=text, llm=llm)
Google Generative AI (langchain-google-genai)
from langchain_google_genai import ChatGoogleGenerativeAI
from drone_capability_parser import drone_capability_parser
llm = ChatGoogleGenerativeAI(model="gemini-1.5-flash")
response = drone_capability_parser(user_input=text, llm=llm)
Default LLM – ChatLLM7
If you do not provide an llm instance, drone_capability_parser uses ChatLLM7 from the langchain_llm7 package:
https://pypi.org/project/langchain-llm7/
The free tier of LLM7 offers generous rate limits that satisfy most development and testing scenarios.
To increase limits, supply a personal API key:
export LLM7_API_KEY="your_api_key_here"
or directly:
response = drone_capability_parser(user_input=text, api_key="your_api_key_here")
You can obtain a free API key by registering at:
https://token.llm7.io/
Contributing & Support
- Issues: Please open any bugs or feature requests on the GitHub issue tracker:
https://github.... - Author: Eugene Evstafev – hi@euegne.plus
- GitHub: chigwell
License
This project is licensed under the MIT License. See the LICENSE file for details.
Metadata
Release files for drone-capability-parser 2025.12.21140812
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| drone_capability_parser-2025.12.21140812.tar.gz | 4.9 kB | Without provenance | Details for drone_capability_parser-2025.12.21140812.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| drone_capability_parser-2025.12.21140812-py3-none-any.whl | Python 3 | none | any | Details for drone_capability_parser-2025.12.21140812-py3-none-any.whl |
Total release size: 10.7 kB
Release files / drone_capability_parser-2025.12.21140812.tar.gz
| Download URL | drone_capability_parser-2025.12.21140812.tar.gz |
|---|---|
| Size | 4.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5831cfebd3e880becc50eb34710583e54bfbe3a8e502ce4faac78cac2b49f509
|
|
BLAKE2b-256 checksum How to use checksums |
66106f96133f3d452ef36922ad837d5191fd2d8f7fb72aa564ac36cf408a6a50
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.1
|
Release files / drone_capability_parser-2025.12.21140812-py3-none-any.whl
| Download URL | drone_capability_parser-2025.12.21140812-py3-none-any.whl |
|---|---|
| Size | 5.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d6d26505f974b34869a25def9a176d93dc6f9481c97a2b4ba1c88db88bc8f937
|
|
BLAKE2b-256 checksum How to use checksums |
e782482b328200d3cb035f0d5e1078526dda634e27cdcbe5af9d64064874a3eb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.1
|
Security for drone-capability-parser 2025.12.21140812
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.