Skip to main content

A new package is designed to process complex conceptual prompts like 'Dark Enlightenment' by leveraging language models with structured pattern matching. Users provide a descriptive text input related

Project description

concept‑extractor

PyPI version License: MIT Downloads LinkedIn

concept‑extractor is a lightweight Python package that turns complex, philosophical or thematic text prompts (e.g., “Dark Enlightenment”) into concise, well‑structured summaries or analyses. It leverages language models via LangChain and a pattern‑matching helper (llmatch) to guarantee that the output conforms to a user‑defined regular‑expression pattern.

Key points

  • Text‑only – no multimedia handling.
  • Deterministic output thanks to regex‑based validation.
  • Works out‑of‑the‑box with the default ChatLLM7 model; any LangChain‑compatible LLM can be swapped in.

Installation

pip install concept_extractor

Quick start

from concept_extractor import concept_extractor

# Your prompt describing a complex concept
user_input = """
The Dark Enlightenment is a contemporary philosophical movement that...
"""

# Run the extractor (uses ChatLLM7 by default)
summary = concept_extractor(user_input)

print(summary)

summary is a list of strings that matches the pattern defined in concept_extractor.prompts.


Function signature

def concept_extractor(
    user_input: str,
    api_key: Optional[str] = None,
    llm: Optional[BaseChatModel] = None,
) -> List[str]:
Parameter Type Description
user_input str The text you want to analyse.
api_key Optional[str] API key for LLM7. If omitted, the environment variable LLM7_API_KEY is used; otherwise a placeholder "None" is supplied.
llm Optional[BaseChatModel] Any LangChain BaseChatModel instance. When omitted the package creates a ChatLLM7 instance automatically.

The function returns a List[str] containing the extracted data that matches the internal regex pattern.


Using a custom LLM

If you prefer another provider (OpenAI, Anthropic, Google, etc.), simply pass a LangChain chat model instance:

OpenAI

from langchain_openai import ChatOpenAI
from concept_extractor import concept_extractor

llm = ChatOpenAI(model="gpt-4o-mini")
response = concept_extractor(user_input, llm=llm)
print(response)

Anthropic

from langchain_anthropic import ChatAnthropic
from concept_extractor import concept_extractor

llm = ChatAnthropic(model="claude-3-haiku-20240307")
response = concept_extractor(user_input, llm=llm)
print(response)

Google Generative AI

from langchain_google_genai import ChatGoogleGenerativeAI
from concept_extractor import concept_extractor

llm = ChatGoogleGenerativeAI(model="gemini-1.5-flash")
response = concept_extractor(user_input, llm=llm)
print(response)

API key & rate limits

  • The default free tier of LLM7 (the model used when you don’t supply an llm) provides generous rate limits that satisfy most use cases of this package.
  • To use higher limits or your own quota, set the environment variable LLM7_API_KEY or pass the key directly:
response = concept_extractor(user_input, api_key="your_llm7_api_key")

Contributing & support


Author

Eugene Evstafevhi@euegne.plus
GitHub: chigwell


License

This project is licensed under the MIT License. See the LICENSE file in the repository 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

concept_extractor-2025.12.21170754.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

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

concept_extractor-2025.12.21170754-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file concept_extractor-2025.12.21170754.tar.gz.

File metadata

File hashes

Hashes for concept_extractor-2025.12.21170754.tar.gz
Algorithm Hash digest
SHA256 c8785a7ff296ce6c01f844fe53869f42945ece5edd87ce22323b6733c7eaa7e2
MD5 bd3aa0db972ba0e44969545c362679b7
BLAKE2b-256 b3db8af416b2b5bec118f01fdf3704d2b86eb38f51e445108dc5d440441e7bc8

See more details on using hashes here.

File details

Details for the file concept_extractor-2025.12.21170754-py3-none-any.whl.

File metadata

File hashes

Hashes for concept_extractor-2025.12.21170754-py3-none-any.whl
Algorithm Hash digest
SHA256 6500eb2e2fc81cf3c7fd57dc0095088791a54ab0ac1908367f7f5c53ff2ec66c
MD5 59e63ac2e68fedd66159b5f0d0e1dd97
BLAKE2b-256 4dee678677ef73999ce38ee789ca96ab0fd8e5f70eb4eeadec38549318f5db8f

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