|
--- |
|
title: ArtyLLaMA |
|
emoji: π¦π¨ |
|
colorFrom: indigo |
|
colorTo: pink |
|
sdk: static |
|
pinned: false |
|
--- |
|
# ArtyLLaMA: Empowering AI Creativity in the Open Source Community π¦π¨ |
|
|
|
ArtyLLaMA is an experimental chat interface for Open Source Large Language Models, leveraging the power of Ollama, OpenAI, and Anthropic. It features dynamic content generation and display through an "Artifacts-like" system, making AI-assisted creativity more accessible and interactive. |
|
|
|
## Project Description |
|
|
|
ArtyLLaMA is not a model itself, but a framework that allows users to interact with various language models. It provides a user-friendly interface for generating creative content, code, and visualizations using state-of-the-art language models. |
|
|
|
### Key Features: |
|
|
|
- π¦ **Multi-Provider Integration**: Seamless support for Ollama, OpenAI, and Anthropic models |
|
- π¨ **Dynamic Artifact Generation**: Create and display content artifacts during chat interactions |
|
- π₯οΈ **Real-time HTML Preview**: Instantly visualize HTML artifacts with interactive canvas |
|
- π **Multi-Model Support**: Choose from multiple language models across providers |
|
- π± **Responsive Design**: Mobile-friendly interface built with Tailwind CSS |
|
- π **Dark Mode**: Easy on the eyes with a default dark theme |
|
- π **Local Inference**: Run models locally for privacy and customization |
|
- ποΈ **Code Syntax Highlighting**: Enhanced readability for various programming languages |
|
- π **SVG Rendering Support**: Display AI-created vector graphics |
|
- π **3D Visualization**: Utilize Three.js for 3D visualizations and simulations |
|
- π **User Authentication**: JWT-based system for user registration and login |
|
- π **Personalized Chat History**: Store and retrieve messages based on user ID |
|
- π **Semantic Search**: Cross-model semantic search capabilities in chat history |
|
- π **Dynamic Embedding Collections**: Support for multiple embedding models with automatic collection creation |
|
|
|
## Intended Use |
|
|
|
ArtyLLaMA is designed for developers, researchers, and creative professionals who want to: |
|
- Explore the capabilities of various language models |
|
- Generate and iterate on creative content, including code, designs, and written text |
|
- Prototype AI-assisted applications and workflows |
|
- Experiment with local and cloud-based AI inference |
|
|
|
## Limitations |
|
|
|
- Local setup requires installation of Ollama for certain features |
|
- Performance depends on the user's hardware capabilities or chosen cloud provider |
|
- Does not include built-in content moderation (users should implement their own safeguards) |
|
|
|
## Ethical Considerations |
|
|
|
Users of ArtyLLaMA should be aware of: |
|
- Potential biases present in the underlying language models |
|
- The need for responsible use and content generation |
|
- Privacy implications of using AI-generated content and storing chat history |
|
|
|
## Technical Specifications |
|
|
|
- **Frontend**: React-based with Tailwind CSS |
|
- **Backend**: Node.js with Express.js |
|
- **Required Libraries**: React, Express.js, Tailwind CSS, Three.js, and others (see package.json) |
|
- **Supported Model Formats**: Those supported by Ollama, OpenAI, and Anthropic |
|
- **Hardware Requirements**: Varies based on the chosen model and deployment method |
|
|
|
## Getting Started |
|
|
|
1. Clone the repository: `git clone https://github.com/kroonen/ArtyLLaMA.git` |
|
2. Install dependencies: `npm install` |
|
3. Set up environment variables (see README for details on API keys) |
|
4. Run the application: `npm run dev` |
|
5. Access the interface at `http://localhost:3000` |
|
|
|
For more detailed instructions, including Docker setup, visit our [GitHub repository](https://github.com/ArtyLLaMA/ArtyLLaMA). |
|
|
|
## License |
|
|
|
ArtyLLaMA is distributed under the ArtyLLaMa Research Project License. This license allows free use for non-commercial, academic, and research purposes with attribution. Commercial use requires explicit written permission. See the [LICENSE](https://github.com/kroonen/ArtyLLaMA/blob/main/LICENSE) file for full details. |
|
|
|
## Citation |
|
|
|
If you use ArtyLLaMA in your research or projects, please cite it as follows: |
|
|
|
```bibtex |
|
@software{artyllama2024, |
|
author = {Robin Kroonen}, |
|
title = {ArtyLLaMA: Empowering AI Creativity in the Open Source Community}, |
|
year = {2024}, |
|
url = {https://github.com/kroonen} |
|
} |
|
``` |
|
|
|
## Contact |
|
|
|
For questions, feedback, or collaborations, please reach out to: |
|
- GitHub: [https://github.com/ArtyLLaMA](https://github.com/kroonen) |
|
- Email: robin@kroonen.ai |
|
- Twitter: [@rob_x_ai](https://x.com/rob_x_ai) |
|
|
|
We welcome contributions and feedback from the community, subject to the terms of our license! |