add README.md and correct Docker files
This commit is contained in:
parent
b7d735697f
commit
9f2178ba3e
@ -11,8 +11,10 @@ RUN apt-get update && apt-get install -y \
|
|||||||
|
|
||||||
COPY requirements.txt .
|
COPY requirements.txt .
|
||||||
|
|
||||||
RUN pip install --no-cache-dir -r requirements.txt
|
RUN pip install -r requirements.txt
|
||||||
|
|
||||||
COPY . .
|
COPY . .
|
||||||
|
|
||||||
|
EXPOSE 8000
|
||||||
|
|
||||||
ENTRYPOINT ["chainlit", "run", "app.py", "--host", "0.0.0.0", "--port", "8000"]
|
ENTRYPOINT ["chainlit", "run", "app.py", "--host", "0.0.0.0", "--port", "8000"]
|
||||||
109
README.md
109
README.md
@ -0,0 +1,109 @@
|
|||||||
|
# Právny AI Asistent – integrácia s API
|
||||||
|
|
||||||
|
## POPIS
|
||||||
|
|
||||||
|
Právny AI Asistent je inteligentný asistent integrovaný s oficiálnymi verejnými API Ministerstva spravodlivosti
|
||||||
|
Slovenskej republiky. Systém poskytuje užívateľom prístup k štruktúrovaným právnym informáciám prostredníctvom
|
||||||
|
prirodzeného jazyka.
|
||||||
|
|
||||||
|

|
||||||
|
|
||||||
|
**Hlavné funkcie:**
|
||||||
|
- Interpretácia užívateľských otázok v prirodzenom jazyku
|
||||||
|
- Automatická extrakcia a validácia parametrov
|
||||||
|
- Načítavanie dát výlučne cez oficiálne API
|
||||||
|
- Prezentácia výsledkov v zrozumiteľnom formáte v slovenskom jazyku
|
||||||
|
|
||||||
|
## POUŽITÉ KNIŽNICE A TECHNOLÓGIE
|
||||||
|
|
||||||
|
- **Python** – hlavný programovací jazyk
|
||||||
|
- **openai-agent** – tvorba AI agentov od OpenAI
|
||||||
|
- **httpx** – asynchrónna komunikácia s API
|
||||||
|
- **Chainlit** – framework pre chat rozhranie
|
||||||
|
- **Ollama** – lokálne používanie AI modelov
|
||||||
|
- **Docker** – kontajnerizácia aplikácie
|
||||||
|
- a **iné**
|
||||||
|
|
||||||
|
## ŠTRUKTÚRA PROJEKTU
|
||||||
|
```
|
||||||
|
ai-lawyer-agent/
|
||||||
|
├── api/ # API logika
|
||||||
|
│ └── tools/ # API nástroje
|
||||||
|
│ ├── __init__.py
|
||||||
|
│ ├── fetch_api_data.py # Spracovanie API
|
||||||
|
│ └── schemas.py # Pydantic schémy
|
||||||
|
├── core/
|
||||||
|
│ ├── __init__.py
|
||||||
|
│ ├── initialize_agent.py # Inicializácia AI agenta
|
||||||
|
│ ├── stream_response.py # Streamovanie odpovedí
|
||||||
|
│ └── system_prompt.py # Systémový prompt
|
||||||
|
├── public/ # Verejné zdroje
|
||||||
|
│ ├── icon/ # Ikony a logá
|
||||||
|
│ │ ├── favicon.png
|
||||||
|
│ │ ├── logo_dark.png
|
||||||
|
│ │ └── logo_light.png
|
||||||
|
│ ├── img/
|
||||||
|
│ ├── styles.css # Štýly rozhrania
|
||||||
|
│ └── theme.json # Nastavenia témy
|
||||||
|
├── .chainlit/ # Markdown pre Chainlit
|
||||||
|
└── app.py # Hlavný súbor aplikácie (Сhainlit + spracovanie API)
|
||||||
|
```
|
||||||
|
|
||||||
|
## INŠTRUKCIA PRE INŠTALÁCIU
|
||||||
|
|
||||||
|
### **Inštalácia cez Git**
|
||||||
|
|
||||||
|
### 1. **Naklonovanie repozitára**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone git@git.kemt.fei.tuke.sk:od059jr/ai-lawyer-agent.git
|
||||||
|
```
|
||||||
|
|
||||||
|
### 2. **Vytvorenie virtuálneho prostredia**
|
||||||
|
|
||||||
|
#### Pre Windows
|
||||||
|
```bash
|
||||||
|
python -m venv venv
|
||||||
|
|
||||||
|
venv\Scripts\activate
|
||||||
|
```
|
||||||
|
|
||||||
|
#### Pre macOS/Linux
|
||||||
|
```
|
||||||
|
python3 -m venv venv
|
||||||
|
|
||||||
|
source venv/bin/activate
|
||||||
|
```
|
||||||
|
|
||||||
|
### 3. **Inštalácia závislostí**
|
||||||
|
```bash
|
||||||
|
pip install -r requirements.txt
|
||||||
|
```
|
||||||
|
|
||||||
|
### 4. **Sťahovanie inštalátora Ollama**
|
||||||
|
|
||||||
|
https://ollama.com/download
|
||||||
|
|
||||||
|
|
||||||
|
### 5. ** Sťahovanie modelov**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ollama pull qwen3-next:80b-cloud
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ollama pull gpt-oss:20b-cloud
|
||||||
|
```
|
||||||
|
|
||||||
|
```bash
|
||||||
|
ollama pull deepseek-v3.1:671b-cloud
|
||||||
|
```
|
||||||
|
|
||||||
|
### **Inštalácia cez DOCKER**
|
||||||
|
|
||||||
|
### 1. Inštalácia Docker a Docker Desktop
|
||||||
|
|
||||||
|
### 2. Nainštalujte a spustite aplikáciu
|
||||||
|
|
||||||
|
https://hub.docker.com/r/alexgott0616/ai-lawyer-agent
|
||||||
|
|
||||||
@ -1,3 +1,4 @@
|
|||||||
|
import os
|
||||||
from agents import Agent, AgentHooks
|
from agents import Agent, AgentHooks
|
||||||
from agents import OpenAIChatCompletionsModel, AsyncOpenAI, ModelSettings
|
from agents import OpenAIChatCompletionsModel, AsyncOpenAI, ModelSettings
|
||||||
from agents import set_tracing_disabled, enable_verbose_stdout_logging
|
from agents import set_tracing_disabled, enable_verbose_stdout_logging
|
||||||
@ -11,6 +12,8 @@ from api.tools.decisions import DecisionsAPI
|
|||||||
from api.tools.admin_proceedings import AdminProceedingsAPI
|
from api.tools.admin_proceedings import AdminProceedingsAPI
|
||||||
from api.tools.civil_proceedings import CivilProceedingsAPI
|
from api.tools.civil_proceedings import CivilProceedingsAPI
|
||||||
|
|
||||||
|
ollama_host = os.getenv("OLLAMA_HOST", "host.docker.internal:11434")
|
||||||
|
|
||||||
set_tracing_disabled(True)
|
set_tracing_disabled(True)
|
||||||
enable_verbose_stdout_logging()
|
enable_verbose_stdout_logging()
|
||||||
|
|
||||||
@ -29,7 +32,7 @@ def assistant_agent(model_name: str = "qwen3-next:80b-cloud") -> BaseAgent:
|
|||||||
admin_proceedings_api = AdminProceedingsAPI()
|
admin_proceedings_api = AdminProceedingsAPI()
|
||||||
civil_proceedings_api = CivilProceedingsAPI()
|
civil_proceedings_api = CivilProceedingsAPI()
|
||||||
|
|
||||||
client = AsyncOpenAI(base_url="http://localhost:11434/v1", api_key="ollama")
|
client = AsyncOpenAI(base_url=f"http://{ollama_host}/v1", api_key="ollama")
|
||||||
|
|
||||||
model = OpenAIChatCompletionsModel(model=model_name, openai_client=client)
|
model = OpenAIChatCompletionsModel(model=model_name, openai_client=client)
|
||||||
|
|
||||||
|
|||||||
BIN
public/img/project.png
Normal file
BIN
public/img/project.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 97 KiB |
BIN
requirements.txt
BIN
requirements.txt
Binary file not shown.
BIN
test/Examples_of_questions_old.pdf
Normal file
BIN
test/Examples_of_questions_old.pdf
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user