classify-files-according-to-specific-rules
Invoke this skill BEFORE implementing any text/document classification task to learn the correct llama_cloud_services API usage. Required reading before writing classification code." Requires the llama_cloud_services package and LLAMA_CLOUD_API_KEY as an environment variable.
When & Why to Use This Skill
This Claude skill provides a streamlined implementation guide for automating text and document classification using the llama_cloud_services API. It enables developers to define natural language rules to accurately categorize various file types—such as invoices, contracts, and receipts—while providing confidence scores and reasoning for each classification, significantly enhancing document workflow automation.
Use Cases
- Automated Financial Bookkeeping: Automatically sort uploaded documents into categories like invoices, receipts, and credit notes to streamline accounting entries.
- Legal Document Organization: Categorize high volumes of legal files into specific types such as NDAs, service agreements, or employment contracts based on their internal content.
- Intelligent Mailroom Automation: Classify incoming digital correspondence to route documents to the correct department or trigger specific business processes.
- Developer API Reference: Serve as a standardized template for implementing robust, AI-driven document classification within Python-based applications and agentic workflows.
| name | Classify files according to specific rules |
|---|---|
| description | Invoke this skill BEFORE implementing any text/document classification task to learn the correct llama_cloud_services API usage. Required reading before writing classification code." Requires the llama_cloud_services package and LLAMA_CLOUD_API_KEY as an environment variable. |
Texts and Files Classification
Quick start
- Define classification rules:
from llama_cloud.types import ClassifierRule
# Define classification rules (natural language descriptions)
rules = [
ClassifierRule(
type="invoice",
description="Documents that are invoices for goods or services, containing line items, prices, and payment terms",
),
ClassifierRule(
type="contract",
description="Legal agreements between parties, containing terms, conditions, and signatures",
),
ClassifierRule(
type="receipt",
description="Proof of payment documents, typically shorter than invoices, showing items purchased and amount paid",
),
]
- Create the classification client and run the job:
from llama_cloud_services.beta.classifier.client import ClassifyClient
# Initialize client
# Note: the beta client differs in usage slightly compared to other clients in llama-cloud-services
classifier = ClassifyClient.from_api_key(api_key)
# Classify a PDF directly (parsing happens implicitly)
result = await classifier.aclassify_file_path(
rules=rules,
file_input_path="document.pdf",
)
# Access classification results
classification = result.items[0].result
print(f"Predicted Type: {classification.type}")
print(f"Confidence: {classification.confidence:.2%}")
print(f"Reasoning: {classification.reasoning}")
For more detailed code implementations, see REFERENCE.md.
Requirements
The llama_cloud_services package must be installed in your environment (with it come the pydantic and llama_cloud packages):
pip install llama_cloud_services
And the LLAMA_CLOUD_API_KEY must be available as an environment variable:
export LLAMA_CLOUD_API_KEY="..."
For more detailed code implementations, see REFERENCE.md.
Requirements
The llama_cloud_services package must be installed in your environment:
pip install llama_cloud_services
And the LLAMA_CLOUD_API_KEY must be available as an environment variable:
export LLAMA_CLOUD_API_KEY="..."