https://github.com/chigwell/cryptoschema-extractor
This system takes a textual synopsis of a cryptographic scheme and extracts a structured summary that highlights its key components, such as the types of finite fields used, the encryption process, ke
https://github.com/chigwell/cryptoschema-extractor
catalog cryptographic-scheme cryptosystem-analysis educational-material encryption-process feature-extraction finite-fields key-generation mathematical-principles research-summary structured-data-format structured-summary textual-synopsis unstructured-text
Last synced: about 1 month ago
JSON representation
This system takes a textual synopsis of a cryptographic scheme and extracts a structured summary that highlights its key components, such as the types of finite fields used, the encryption process, ke
- Host: GitHub
- URL: https://github.com/chigwell/cryptoschema-extractor
- Owner: chigwell
- Created: 2025-12-21T11:22:04.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2025-12-21T11:22:15.000Z (about 2 months ago)
- Last Synced: 2025-12-23T03:06:54.656Z (about 2 months ago)
- Topics: catalog, cryptographic-scheme, cryptosystem-analysis, educational-material, encryption-process, feature-extraction, finite-fields, key-generation, mathematical-principles, research-summary, structured-data-format, structured-summary, textual-synopsis, unstructured-text
- Language: Python
- Homepage: https://pypi.org/project/cryptoschema-extractor/
- Size: 2.93 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# cryptoschema-extractor
[](https://badge.fury.io/py/cryptoschema-extractor)
[](https://opensource.org/licenses/MIT)
[](https://pepy.tech/project/cryptoschema-extractor)
[](https://www.linkedin.com/in/eugene-evstafev-716669181/)
A Python package that extracts structured summaries of cryptographic schemes from textual descriptions.
## Overview
This system takes a textual synopsis of a cryptographic scheme and extracts a structured summary that highlights its key components, such as the types of finite fields used, the encryption process, key generation, and the mathematical principles underlying the cryptosystem. It transforms unstructured textual references into a predictable, organized format suitable for inclusion in catalogs, research summaries, or educational material.
## Installation
```bash
pip install cryptoschema_extractor
```
## Usage
### Basic Usage
```python
from cryptoschema_extractor import cryptoschema_extractor
response = cryptoschema_extractor(user_input="Your text here")
print(response)
```
### Using a Custom LLM
You can use any LLM compatible with LangChain by passing an instance of it to the `cryptoschema_extractor` function.
#### Example with OpenAI
```python
from langchain_openai import ChatOpenAI
from cryptoschema_extractor import cryptoschema_extractor
llm = ChatOpenAI()
response = cryptoschema_extractor(user_input="Your text here", llm=llm)
print(response)
```
#### Example with Anthropic
```python
from langchain_anthropic import ChatAnthropic
from cryptoschema_extractor import cryptoschema_extractor
llm = ChatAnthropic()
response = cryptoschema_extractor(user_input="Your text here", llm=llm)
print(response)
```
#### Example with Google
```python
from langchain_google_genai import ChatGoogleGenerativeAI
from cryptoschema_extractor import cryptoschema_extractor
llm = ChatGoogleGenerativeAI()
response = cryptoschema_extractor(user_input="Your text here", llm=llm)
print(response)
```
### Using a Custom API Key
If you want to use a custom API key for LLM7, you can pass it directly or set it as an environment variable.
#### Passing API Key Directly
```python
from cryptoschema_extractor import cryptoschema_extractor
response = cryptoschema_extractor(user_input="Your text here", api_key="your_api_key")
print(response)
```
#### Setting API Key via Environment Variable
```bash
export LLM7_API_KEY="your_api_key"
```
```python
from cryptoschema_extractor import cryptoschema_extractor
response = cryptoschema_extractor(user_input="Your text here")
print(response)
```
## Parameters
- `user_input` (str): The user input text to process.
- `llm` (Optional[BaseChatModel]): The LangChain LLM instance to use. If not provided, the default `ChatLLM7` will be used.
- `api_key` (Optional[str]): The API key for LLM7. If not provided, the environment variable `LLM7_API_KEY` will be used.
## Default LLM
By default, this package uses `ChatLLM7` from [langchain_llm7](https://pypi.org/project/langchain-llm7/).
## Rate Limits
The default rate limits for LLM7 free tier are sufficient for most use cases of this package. If you want higher rate limits, you can pass your own API key via the environment variable `LLM7_API_KEY` or directly to the `cryptoschema_extractor` function. You can get a free API key by registering at [LLM7](https://token.llm7.io/).
## Issues
If you encounter any issues, please report them on the [GitHub issues page](https://github.com/chigwell/cryptoschema-extractor/issues).
## Author
- **Eugene Evstafev**
- **Email**: hi@eugene.plus
- **GitHub**: [chigwell](https://github.com/chigwell)