Metadata-Version: 2.4
Name: chatweaver
Version: 0.1.0
Summary: A simple (for the moment) package that allows you to implement the back-end of a ai chat-bot with openai models in python.
Author-email: Cecchelani Diego <ceccdieg@gmail.com>
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Requires-Python: >=3.8
Description-Content-Type: text/markdown
Requires-Dist: openai==1.66.5

# ChatWeaver

**ChatWeaver** is a Python library that simplifies the implementation of chatbots powered by OpenAI models. Designed with developers in mind, it provides powerful features and an intuitive interface to enhance the development of conversational AI.

---

## Features

- **Chat History Management**: Easily track and manage conversation context.
- **Message Templates**: Automatically remember and include previous messages in prompts.
- **File Integration**: Add images and PDF files to your prompts seamlessly.
- **Custom Model Support**: Compatible with various OpenAI models.
- **Extensibility**: Flexible architecture for scalable chatbot solutions.

---

## Installation
Install ChatWeaver using pip:

```bash
pip install chatweaver
```

---

## Quick Start

Here’s how you can get started with ChatWeaver:

```python
import chatweaver as cw

model = cw.Model(
    model="gpt-4o", 
    api_key="<Your OpenAI API key here>"
    )

bot = cw.Bot(
    rules=cw.chat_weaver_rules["basic"], 
    name="AiBot", 
    cw_model=model
    )

chat = cw.Chat(
    replies_limit=10, 
    user="Diego", 
    cw_bot=bot
    )

prompt = "Hi how are you?"
print(chat.get_response(prompt=prompt))
```

---

## Requirements
- Python 3.8 or above.
- OpenAI Python library (openai).

---

### Whats new in 0.1.0?
- Implemented a new method for creating chats while ensuring backward compatibility with the existing system.
- Enhanced the Bot's capabilities by enabling it to remember the user's name along with its own.
