AAYMA
RU
Войти

CareTech

AI-консультант по каталогу электротоваров EKT: чат ищет товары по названию/артикулу/SKU, подбирает аналоги, показывает цену и остатки и добавляет…

Рабочий MVP
Команда «CareTech» 6💬 0 комментариевс 23 сентября 2026 г.

О проекте

Команда: CareTech
Кейс HackAlem.ai: Торговля — Электрокомплект · ekt.kz
Стадия: Рабочий MVP

Задача кейса: AI-консультант по каталогу ekt.kz: товары, аналоги, цены, остатки, корзина

Суть

AI-консультант по каталогу электротоваров EKT: чат ищет товары по названию/артикулу/SKU, подбирает аналоги, показывает цену и остатки и добавляет товары в корзину после подтверждения.

Как устроено

Go HTTP API с каталогом (демо или JSON-выгрузка EKT), поиском с приоритетом точного артикула и подбором альтернатив по категории и номиналу. Chat Service по session_id вызывает LLM-адаптер (OpenAI-compatible API или локальная Ollama), корзина хранится in-memory с pending-confirm workflow. Фронтенд на React + Vite, развёртывание через Docker Compose и nginx.

Ключевые решения

  • поиск по артикулу/SKU
  • подбор аналогов по категории и номиналу
  • pending-confirm корзина
  • OpenAI-compatible LLM adapter

Особенности

Бэкенд на Go; добавление в корзину только через явное подтверждение пользователя (pending-confirm).

Стек

Go · React · Vite · JavaScript · Docker Compose · nginx · PostgreSQL (опционально)

Модели

gpt-4o-mini · qwen2.5:7b (Ollama)


Проект создан за 5 часов на финале хакатона HackAlem.ai (23 сентября 2026, Астана). Код — BAITC-Hacks/hack-a7cf2003-caretech.

README

README.md

CareTech AI assistant for electrical catalog

CareTech - EKT -. , , , .

  • , , SKU, ID
  • : , , , .
  • -,
  • session_id
  • Ollama OpenAI-compatible
  • -, JSON-

  • Frontend React + Vite
  • Backend Go
  • API ,
  • in-memory
  • pending-confirm workflow
  • LLM

  • Go 1.22
  • React 19
  • Vite 8
  • JavaScript / JSX
  • HTML / CSS
  • Docker + Docker Compose
  • PostgreSQL-ready integration (optional)
  • OpenAI-compatible API / Ollama
  • Git + GitHub

-

flowchart TD
    U[] --> FE[Frontend React + Vite]
    FE --> API[Go HTTP API]
    API --> CH[Chat Service]
    API --> CAT[Catalog Repository]
    API --> CART[Cart Store]
    CH --> LLM[LLM Adapter\nOpenAI / Ollama]
    CAT --> DATA[Demo catalog or JSON catalog]
    CART --> MEM[In-memory session/cart]
    FE --> BROWSER[Browser UI]

careTech/
+- cmd/
  L- server/
     L- main.go
+- internal/
  +- cart/
  +- catalog/
  +- chat/
  +- db/
  +- httpapi/
  L- llm/
+- src/
  +- App.jsx
  +- App.css
  +- main.jsx
  L- ...
+- public/
+- data/
+- .env.example
+- .gitignore
+- docker-compose.yml
+- Dockerfile.backend
+- Dockerfile.frontend
+- go.mod
+- package.json
+- vite.config.js
+- README.md
L- index.html

1.

git clone https://github.com/BAITC-Hacks/hack-a7cf2003-caretech.git
cd careTech

2.

npm install

3. backend

.env .env.example :

LLM_API_KEY=your_api_key_here
LLM_BASE_URL=https://api.openai.com/v1/chat/completions
LLM_MODEL=gpt-4o-mini
DATABASE_URL=
EKT_PRODUCTS_FILES=

Ollama :

LLM_API_KEY=ollama
LLM_BASE_URL=http://localhost:11434/v1/chat/completions
LLM_MODEL=qwen2.5:7b

Go backend:

go run ./cmd/server

Backend :

http://localhost:8080/health

4. frontend

npm run dev -- --host 0.0.0.0

Frontend :

http://localhost:5173/

5. API

Health-check:

curl http://localhost:8080/health

:

curl "http://localhost:8080/api/products?q=ABB"

:

curl -X POST http://localhost:8080/api/chat \
  -H "Content-Type: application/json" \
  -d '{"session_id":"demo-1","message":" ABB-S201-C16?"}'

Docker

docker compose up --build

:

  •      Redis/PostgreSQL.
    
  •  JSON- EKT   `EKT_PRODUCTS_FILES`.
    
  • API- . .env .gitignore.

  • Backend: Go + HTTP API
  • Frontend: React + Vite
  • AI: OpenAI-compatible API / Ollama
  • Product logic: catalog search and alternatives
  • Cart logic: confirmed add-to-cart flow

CareTech / HackAlem style prototype for electric equipment catalog assistant.

Звёзды
⭐ 0
Форки
0
Язык
Go
Последний push
в прошлом месяце
Коммиты
34
Авторы
3
Файлы
47
Ветки
3

Авторы коммитов

nurtttay 16Aiym Samakova 15Dana Karymsakova 4

История коммитов

  • 2026-09-23 17:28docs: add project overview and setup guidenurtttay
  • 2026-09-23 17:27fix: load LLM config from .env and support local Ollamanurtttay
  • 2026-09-23 17:08Delete README.mdAiym Samakova
  • 2026-09-23 17:07Delete README.mdAiym Samakova
  • 2026-09-23 16:55feat: add backend Docker supportnurtttay
  • 2026-09-23 16:48fix: link cart icon to saved products pageАдмин
  • 2026-09-23 16:44Merge remote-tracking branch 'origin/main'nurtttay
  • 2026-09-23 16:44feat: add docker stack and EKT assistant promptnurtttay
Все коммиты (34)
  • 2026-09-23 16:42refactor: remove demo mode from frontendАдмин
  • 2026-09-23 16:35Merge remote-tracking branch 'origin/main'nurtttay
  • 2026-09-23 16:34fix: proxy latest frontend to Go APInurtttay
  • 2026-09-23 16:32Delete README.mdAiym Samakova
  • 2026-09-23 16:30merge: sync latest frontend before backend pushnurtttay
  • 2026-09-23 16:30Merge remote-tracking branch 'origin/main'nurtttay
  • 2026-09-23 16:29AI_assistant_promptDana Karymsakova
  • 2026-09-23 16:28feat: connect backend to EKT catalog and Ollama AInurtttay
  • 2026-09-23 16:27Generated_dataDana Karymsakova
  • 2026-09-23 16:27feat: add saved products cart pageАдмин
  • 2026-09-23 16:25ТЗ_front_backDana Karymsakova
  • 2026-09-23 16:06refactor: remove Go API references from frontend copyАдмин
  • 2026-09-23 16:01Delete README.mdAiym Samakova
  • 2026-09-23 15:59docs: document EKT frontend setupАдмин
  • 2026-09-23 15:54fix: reveal dynamic product details inlineАдмин
  • 2026-09-23 15:47feat: add linked catalog and dynamic product pagesАдмин
  • 2026-09-23 15:41feat: merge backend and frontend via APInurtttay
  • 2026-09-23 15:32Delete README.mdAiym Samakova
  • 2026-09-23 15:30feat: connect frontend to EKT Go API contractАдмин
  • 2026-09-23 15:29feat: complete backend MVP, AI catalog flow and docsnurtttay
  • 2026-09-23 15:11Данные нормализованыDana Karymsakova
  • 2026-09-23 15:06feat: add EKT AI product consultant frontendАдмин
  • 2026-09-23 14:22feat: match alternatives by category and current ratingnurtttay
  • 2026-09-23 14:20feat: prioritize exact article matches in catalog searchnurtttay
  • 2026-09-23 14:15feat: align catalog contract with EKT data modelnurtttay
  • 2026-09-23 13:58feat: add chat catalog MVP with pending cart confirmationnurtttay
Структура репозитория (47 файлов)
.dockerignore
.env.example
.gitignore
Dockerfile.backend
Dockerfile.frontend
README.md
careTech_backend_overview.md
cart.html
catalog.html
cmd/server/main.go
docker-compose.yml
eslint.config.js
go.mod
go.sum
index.html
internal/cart/cart.go
internal/catalog/ekt_json.go
internal/catalog/ekt_json_test.go
internal/catalog/memory.go
internal/catalog/product.go
internal/catalog/product_test.go
internal/chat/prompt.go
internal/chat/service.go
internal/chat/service_test.go
internal/db/postgres.go
internal/httpapi/handler.go
internal/llm/client.go
internal/llm/client_test.go
nginx.conf
nvidia_setup.md
package-lock.json
package.json
product.html
public/favicon.svg
public/icons.svg
public/product-placeholder.svg
src/App.css
src/App.jsx
src/api.js
src/assets/hero.png
src/assets/react.svg
src/assets/vite.svg
src/cart.css
src/cart.jsx
src/index.css
src/main.jsx
vite.config.js
Ветки (3)

Обсуждение 0 комментариев

Войдите, чтобы комментировать

Пока нет комментариев — будьте первым.