Skip to main content

A new package that analyzes user-provided text descriptions of mischievous or cleverly unconventional behavior (a 'scamp' scenario) and returns a structured assessment. It evaluates the creativity, hu

Project description

scamp-analyzer

PyPI version License: MIT Downloads LinkedIn

scamp-analyzer is a lightweight Python package that evaluates user‑provided text descriptions of mischievous or cleverly unconventional behavior (a “scamp” scenario). It returns a structured XML‑like assessment of the act’s creativity, humor, and potential social impact, categorizing it as harmless fun, borderline, or potentially problematic.


Installation

pip install scamp_analyzer

Quick Start

from scamp_analyzer import scamp_analyzer

# Simple usage with the default LLM (ChatLLM7)
result = scamp_analyzer(
    user_input="I swapped the sugar with salt in the office kitchen."
)

print(result)   # → List of extracted XML‑like tags

Parameters

Name Type Description
user_input str The text description of the scamp scenario to be analysed.
llm Optional[BaseChatModel] A LangChain chat model. If omitted, the built‑in ChatLLM7 is used.
api_key Optional[str] API key for LLM7. If omitted, the function reads LLM7_API_KEY from the environment (or uses a placeholder).

Using a Custom LLM

You can provide any LangChain chat model that implements BaseChatModel. Below are a few examples.

OpenAI

from langchain_openai import ChatOpenAI
from scamp_analyzer import scamp_analyzer

llm = ChatOpenAI()
response = scamp_analyzer(
    user_input="I printed the boss's email signature on a birthday cake.",
    llm=llm
)

Anthropic

from langchain_anthropic import ChatAnthropic
from scamp_analyzer import scamp_analyzer

llm = ChatAnthropic()
response = scamp_analyzer(
    user_input="I replaced the office chairs with beanbags for a surprise.",
    llm=llm
)

Google Generative AI

from langchain_google_genai import ChatGoogleGenerativeAI
from scamp_analyzer import scamp_analyzer

llm = ChatGoogleGenerativeAI()
response = scamp_analyzer(
    user_input="I swapped the ‘Out of Office’ replies with a funny poem.",
    llm=llm
)

Default LLM (ChatLLM7)

If you don’t supply a custom llm, scamp_analyzer automatically creates a ChatLLM7 instance:

from scamp_analyzer import scamp_analyzer

response = scamp_analyzer(
    user_input="I anonymously left motivational sticky notes around the office."
)

Providing Your Own LLM7 API Key

You can either set the environment variable:

export LLM7_API_KEY="your_llm7_api_key"

or pass it directly:

response = scamp_analyzer(
    user_input="I organized a surprise flash mob at lunch.",
    api_key="your_llm7_api_key"
)

Obtain a free API key by registering at https://token.llm7.io/.


Contributing & Issues

If you encounter any problems or have feature requests, please open an issue:

👉 https://github....

We welcome contributions, documentation improvements, and bug fixes.


Author

Eugene Evstafev
📧 hi@euegne.plus
🐙 GitHub: chigwell


License

This project is licensed under the MIT License – see the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scamp_analyzer-2025.12.21135930.tar.gz (4.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scamp_analyzer-2025.12.21135930-py3-none-any.whl (5.4 kB view details)

Uploaded Python 3

File details

Details for the file scamp_analyzer-2025.12.21135930.tar.gz.

File metadata

File hashes

Hashes for scamp_analyzer-2025.12.21135930.tar.gz
Algorithm Hash digest
SHA256 6692473ab36f46d34367550cf62d87511ae4d900ae0c8e736b349b33b9516ab3
MD5 5224d7967b768a08497bc1e53e32d3b8
BLAKE2b-256 0f0b312e86258ed59cebbab06113a84dc5af3d67b8a4b27b91be978ce6f6ce60

See more details on using hashes here.

File details

Details for the file scamp_analyzer-2025.12.21135930-py3-none-any.whl.

File metadata

File hashes

Hashes for scamp_analyzer-2025.12.21135930-py3-none-any.whl
Algorithm Hash digest
SHA256 69f03a64af2b5ed6129b89acc2082ba1167a726910479a9da02a2c5126c99939
MD5 2f50d0ca79dbc2db3d8fd8fa64e334b2
BLAKE2b-256 70b18bc20ff59874ab1f4876cc01dcdb98b38cc5029c6e2ef31c1798b9e6f099

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page