A core library for the Lion framework
Project description
Lion-Core
Lion-Core is a lightweight yet powerful Python library designed to serve as a foundational framework for machine learning, artificial intelligence, workflow automation, scientific computing, and advanced data management. With a focus on simplicity and extensibility, Lion-Core aims to provide a robust toolkit for complex computational tasks while maintaining a minimal dependency footprint.
Note: Lion-Core is currently in alpha testing. Expect frequent updates and potential API changes.
🌟 Highlights
- Minimal Dependencies: Built with only
Pydantic
as a dependency, ensuring a lightweight and easily maintainable codebase. - Extensible Architecture: Designed from the ground up to be modular and adaptable to a wide range of computational needs.
- Performance-Focused: Optimized data structures and algorithms for efficient large-scale data processing.
🚀 Current Features
-
Advanced Data Structures:
Pile
: A flexible container that combines the best of lists and dictionaries, offering efficient access and powerful querying capabilities.Progression
: An ordered sequence container designed for high-performance operations on large datasets.
-
Robust Type System: Leveraging Pydantic for data validation, ensuring type safety and data integrity across your entire project.
-
Converter System: A flexible framework for seamless data conversion between various formats.
-
Element-based Architecture: A foundational
Element
class that serves as the building block for creating modular and composable components. -
Communication Framework: A groundwork for inter-component messaging, facilitating the development of distributed and microservices-based applications.
-
Form and Validator System: Dynamic workflow manipulation tools that allow for flexible and adaptable process designs.
-
Worker System: Powerful workflow composition capabilities, enabling the creation of complex, multi-stage computational pipelines.
🛣️ Roadmap
We're currently working towards version 0.1.0, focusing on:
- Polishing core abstractions and data structures
- Enhancing the converter system for broader compatibility
- Refining workflow automation processes
- Expanding scientific computing utilities
📦 Installation
As Lion-Core is in alpha testing, it's not yet available on PyPI. You can install the development version directly from the repository:
pip install git+https://github.com/lion-agi/lion-core.git
🛠️ Development Environment Setup
To set up the development environment for Lion-Core:
-
Clone the repository:
git clone https://github.com/lion-agi/lion-core.git cd lion-core
-
Create and activate a virtual environment:
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
-
Install dependencies:
pip install -e .[dev]
-
Run tests:
pytest --maxfail=1 --disable-warnings tests/
-
Check code style and run linters:
black --check . isort --check-only . flake8 .
📚 Documentation
Comprehensive documentation is under development. For now, please refer to the inline documentation and comments in the source code.
🤝 Contributing
We welcome contributions! As the project is in its early stages, please open an issue to discuss potential changes before submitting pull requests.
📄 License
Lion-Core is released under the Apache License 2.0. See the LICENSE file for details.
📬 Contact
For questions, support, or to discuss potential collaborations, please open an issue on our GitHub repository.
Join our Discord community for discussions, support, and updates: Lion-Core Discord Server
Note: Lion-Core is an extraction and refinement of core components from the larger lionagi project. After reaching version 0.1.0, development will continue on Lion-Core while also informing a rewrite of the lionagi library.
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
File details
Details for the file lion_core-0.1.0.tar.gz
.
File metadata
- Download URL: lion_core-0.1.0.tar.gz
- Upload date:
- Size: 213.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c31dd6dc1ef46b4870bf68e96235dc1bd5d203bac76a1ff720035c70bd61e293 |
|
MD5 | f3de9c160b119d0fbe9b207cbe80c44d |
|
BLAKE2b-256 | 3d482ad4368648fdde4a8a82f44006b28bd2f2aaa22c2ee1e2ad537407f2fd3f |
File details
Details for the file lion_core-0.1.0-py3-none-any.whl
.
File metadata
- Download URL: lion_core-0.1.0-py3-none-any.whl
- Upload date:
- Size: 253.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.12.4
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 41c0cb6f4086bdd62d5fd4e6054d44dd146a44ebb9775e07aafc0bcce9a2270b |
|
MD5 | 12c740606f5c3bd85c2af2efb218ede8 |
|
BLAKE2b-256 | d0f6588cef7b7ef006c652fe7a830cedcd92cd43b0e5a59645634b9739a9398b |