# talkd/dialog-lib

Welcome to our project! Here is all the information you need for you to start using dialog-lib as you desire.

Dialog-lib is the base library for the project, it allows users to setup their own LLMs using a structured class, enabling coherent callings across all instances. The main purpose of this project is removing the main difficulties

### Integrations

This is a standalone project, you can use it as a wrapper for LLM instances, right now we have the following LLMs integrated:

* [x] OpenAIs GPT Models (both 3.5 and 4) - available in the server's original repo, being migrated to this one
* [ ] Azure OpenAI
* [ ] Mistral
* [ ] Bedrock
* [ ] DataBricks - In progress
* [ ] MLFlow
* [ ] Hugging Faces - In progress

### How to use

Right now, this repository offers just a single Abstract LLM class inside our agents module and some PostgreSQL memory helpers, we are moving our abstractions to make it easier to implement any LLM you want, giving you access to vector stores and memory instances.

### Future structure

The desired future of our abstraction is something in the lines of the code below:

```python
from dialog_lib.agents import OpenAIAgent

agent_instance = OpenAIAgent(model="gpt3.5-turbo", temperature=0.1, prompt="Be a friendly AI", memory_type="ram")

agent_instance.process("Hello There!")

print(agent_instance.messages) # Get's all the messages saved
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dialog-lib.talkd.ai/talkd-dialog-lib.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
