Przejdź do głównej zawartości

2 posty z tagiem "PostgreSQL"

PostgreSQL — konfiguracja, wydajność, COPY, upserty i diagnostyka zapytań.

Wyświetl wszystkie tagi

Jakość lokalnych LLM: siedem modeli, dwa trudne pytania i wzorzec „brzmi jak ekspert, zmyśla konkrety”

· 13 min aby przeczytać
Przemysław Majdak
Full-Stack Developer, Automation Engineer & Web Security Specialist

Prędkość i jakość lokalnych modeli językowych nie korelują ze sobą w żaden użyteczny sposób. Najszybszy z siedmiu testowanych modeli — 25 tokenów na sekundę — wypadł merytorycznie najgorzej. Najlepszy jakościowo generował 7 tokenów na sekundę. A wspólny mianownik prawie wszystkich odpowiedzi to jeden powtarzalny wzorzec: poprawna struktura i trafny kierunek, przy zmyślonych konkretach — nazwach funkcji API, składni komend, definicjach statystycznych. To jest różnica między „brzmi jak ekspert” a „można wkleić i uruchomić”.

Batching: jedno zapytanie zamiast pięciuset — WHERE id IN, DataLoader, addBatch i COPY

· 11 min aby przeczytać
Przemysław Majdak
Full-Stack Developer, Automation Engineer & Web Security Specialist

Kod, który w pętli odpytuje bazę pięćset razy, nie jest wolny dlatego, że baza jest wolna. Każde z tych zapytań kosztuje na serwerze dziesiątki mikrosekund, a cała reszta to czekanie na sieć — i to czekanie skaluje się liniowo z liczbą iteracji. Na lokalnym Postgresie problem jest niewidoczny, na produkcji w innej strefie dostępności ten sam kod to timeout. Poniżej cztery poziomy batchowania, od WHERE id IN (...) po COPY, z pułapkami, które w każdym z nich wywracają sprawę.