Metadata-Version: 2.4
Name: multidimensions
Version: 0.1.0
Summary: Framework for Reasoning and Agentic base
Author: Alexander Baum
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: openai
Requires-Dist: anthropic
Dynamic: license-file

Dieses Framework bildet die Grundlage für Multistep-Reasoning und den Bau von Agenten.

Aktuell wurde ein vierstufiges Reasoning eingefügt.

1. Analyse
2. Planung
3. Lösung 
4. Fertige Antwort

Die derzeitigen Prompts für die jeweiligen Schritte sind minimal gestaltet. Der aktuelle Fokus liegt auf dem sicherstellen der Funktionalität sowie dem Implementieren neuer Funktionen. Im späteren Verlauf wird das konkrete Prompting für das LLM ausgearbeitet.


Schnittstelle:
-> Über ProviderConfig werden die Attribute 'base_url', 'api_key', 'model' und 'provider' übergeben. Dabei sind alles Strings, 'provider' ist als Plaintext geschrieben 'openai' / 'anthropic'. Schließlich wird das Providerobjekt instanziert durch das Übergeben des ProviderConfig-Objektes durch Provider.from_config().
Die Providerinstanz wird als model_engine an das Raesoning übergeben.


Diese Funktion muss folgende Variablen + Datentypen empfangen: 
- user_prompt (str)
- system_prompt (str)

Der User muss sicherstellen, dass der eigentliche LLM-Aufruf in dieser Funktion erfolgt und das 'return'-Statement der Funktion die Antwort des LLMs als String zurückgibt. 


Der unkomplizierteste Weg liegt in der passenden Nutzung des internen 'Provider'-Moduls. Dieses ist ausdrücklich auf die Kompatibilität ausgerichtet und enthält eigene Fehler sowie Infrastruktur über eigene DTOs. Zudem bietet es sehr hohe Abstraktion bei minimalster Eingabe.

--------------------------

Die Reasoner-eigene Funktion namens "think()" erwartet die initiale Nuteranfrage (user_prompt).

Sie ruft aktuell vier mal die Funktion 'generate()' aus dem übergebenen Ojekt auf und liefert am Ende die finale Antwort als String an den Aufrufer.
Durch das Flag 'print_thinking_steps' (standardmäßig False) werden die "Thinking-Steps" ausgegeben.
