A new package designed to analyze and summarize ecological studies, specifically focusing on the dynamics of species interactions. Users input text excerpts from research papers or field notes, and th
Project description
ecodynalyze – Ecological Study Analysis Package
Standardize and analyze ecological research data with structured insights.
Overview
ecodynalyze is a Python package designed to extract, structure, and summarize key findings from ecological studies. By analyzing text excerpts (e.g., research papers, field notes), it identifies species interactions, dominance hierarchies, and environmental impacts, enabling researchers to compare and synthesize data across diverse sources.
The package leverages LLM7 (default) or custom LLMs (via LangChain) to parse unstructured text and return structured outputs, ensuring consistency and comparability.
Key Features
✅ Structured Data Extraction – Parses species interactions, dominance patterns, and ecological outcomes. ✅ Flexible LLM Integration – Works with LLM7 (default), OpenAI, Anthropic, Google Vertex AI, or any LangChain-compatible model. ✅ Regex-Pattern Validation – Ensures extracted data matches predefined formats. ✅ Environment-Friendly – Optimized for lightweight, high-accuracy analysis.
Installation
pip install ecodynalyze
Usage Examples
Basic Usage (Default LLM7)
from ecodynalyze import ecodynalyze
user_input = """
In a 2023 study, researchers observed that species A dominated interactions
with species B in 85% of recorded events, while species C showed minimal
competitive behavior due to habitat constraints.
"""
response = ecodynalyze(user_input)
print(response)
Custom LLM Integration
Using OpenAI
from langchain_openai import ChatOpenAI
from ecodynalyze import ecodynalyze
llm = ChatOpenAI(model="gpt-4")
response = ecodynalyze(user_input, llm=llm)
Using Anthropic (Claude)
from langchain_anthropic import ChatAnthropic
from ecodynalyze import ecodynalyze
llm = ChatAnthropic(model="claude-2")
response = ecodynalyze(user_input, llm=llm)
Using Google Vertex AI
from langchain_google_genai import ChatGoogleGenerativeAI
from ecodynalyze import ecodynalyze
llm = ChatGoogleGenerativeAI(model="gemini-pro")
response = ecodynalyze(user_input, llm=llm)
Parameters
| Parameter | Type | Description |
|---|---|---|
user_input |
str |
Text excerpt (e.g., research paper, field notes) to analyze. |
api_key |
Optional[str] |
LLM7 API key (defaults to LLM7_API_KEY env var). |
llm |
Optional[BaseChatModel] |
Custom LangChain LLM (e.g., ChatOpenAI, ChatAnthropic). |
LLM7 API Key
- Default: Uses
LLM7_API_KEYenvironment variable. - Manual Override: Pass via
api_keyparameter. - Free Tier: Sufficient for most use cases (rate limits apply).
- Upgrade: Get a custom API key at LLM7 Token.
Output Format
The function returns a list of structured dictionaries containing:
- Species names
- Interaction types (e.g., competition, predation)
- Dominance patterns
- Environmental context
Example output:
[
{
"species1": "A",
"species2": "B",
"interaction": "competition",
"dominance": "A > B (85%)",
"environment": "habitat-constrained"
}
]
Contributing & Support
📢 Issues & Feedback: GitHub Issues 📧 Author: Eugene Evstafev (LinkedIn) 📧 Contact: hi@euegne.plus
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ecodynalyze-2025.12.20201125.tar.gz.
File metadata
- Download URL: ecodynalyze-2025.12.20201125.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
66c0236bd53aeb5361ed9db5b1e482dac2074903cce1894d11ae35be09fc8152
|
|
| MD5 |
cf87761a777f9ece3cf6f908253e768a
|
|
| BLAKE2b-256 |
e6a701f831dc0a55703675ab1c007fefdfa5d6f89200f6d132784014d2144c52
|
File details
Details for the file ecodynalyze-2025.12.20201125-py3-none-any.whl.
File metadata
- Download URL: ecodynalyze-2025.12.20201125-py3-none-any.whl
- Upload date:
- Size: 6.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b16bb3b98eaa1b9b677ff9094206ec9720a85a7403665b9308e9ad8007e0a67a
|
|
| MD5 |
b72645c83fd34b2b671cf2db3b6f06d8
|
|
| BLAKE2b-256 |
c46c43c740a9c9f4533d6f584a523d63e2678b9c5ffc523ed3d2ee21e12fe5b6
|