45 lines
1.5 KiB
Markdown
45 lines
1.5 KiB
Markdown
# cart-to-json
|
|
|
|
Парсинг .txt списков автомобилей в JSON через Ollama.
|
|
|
|
## Папки
|
|
- `lists/` — необработанные .txt файлы
|
|
- `done/` — обработанные (переносятся из lists/)
|
|
- `res/` — результат в JSON
|
|
|
|
## Формат входных данных
|
|
Табуляция: `brand`, `model`, `engine_code`, `date_range`.
|
|
Разделители записей задаются в `RECORD_DELIMITERS` (по умолчанию `\n`, `\r\n`, `\r`).
|
|
**Важно:** `\n` разделяет только по строкам. Несколько записей в одной строке тоже обновляются.
|
|
|
|
## Запуск
|
|
|
|
### Локально
|
|
```bash
|
|
pip install -r requirements.txt
|
|
python3 parse.py
|
|
```
|
|
|
|
### Docker
|
|
```bash
|
|
chmod +x run.sh && ./run.sh
|
|
```
|
|
|
|
Логи Ollama:
|
|
```bash
|
|
docker compose logs -f ollama
|
|
```
|
|
|
|
При первом запуске скачивается модель `mithunrajm06/gemma-3n-e4b:latest`.
|
|
|
|
## Переменные окружения
|
|
| Переменная | Описание |
|
|
|------------|----------|
|
|
| `OLLAMA_HOST` | URL Ollama (по умолчанию `http://localhost:11434`) |
|
|
| `MODEL` | Модель для парсинга |
|
|
| `NUM_CTX` | Размер контекста (32768) |
|
|
| `NUM_PREDICT` | Лимит выходных токенов (512) |
|
|
| `LOG_STREAM` | `1` — вывод стрима в консоль |
|
|
| `SHOW_IO` | `1` — показывать вход и выход по каждой записи |
|
|
|