Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| de:modul:ffit:3-jahr:java:learningunits:lu12:aufgaben:a04 [2025/11/24 01:12] – angelegt apeter | de:modul:ffit:3-jahr:java:learningunits:lu12:aufgaben:a04 [2025/12/16 11:04] (aktuell) – apeter | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| ==== LU12.A04 pgVector in SpringAI verwenden ==== | ==== LU12.A04 pgVector in SpringAI verwenden ==== | ||
| - | Holen Sie sich die Tests mit einem Cherry-Pick auf '' | + | Holen Sie sich die Tests mit einem Cherry-Pick auf '' |
| - | Erstellen Sie eine neue Datenbank und einen neuen Benutzer. Sie dürfen natürlich eigene | + | Erstellen Sie einen Datenbank-Benutzer |
| <code sql> | <code sql> | ||
| CREATE DATABASE ragdb; | CREATE DATABASE ragdb; | ||
| + | \c ragdb; | ||
| CREATE USER rag_user WITH PASSWORD ' | CREATE USER rag_user WITH PASSWORD ' | ||
| GRANT ALL PRIVILEGES ON DATABASE ragdb TO rag_user; | GRANT ALL PRIVILEGES ON DATABASE ragdb TO rag_user; | ||
| + | GRANT USAGE, CREATE ON SCHEMA public TO rag_user; | ||
| + | GRANT ALL PRIVILEGES ON SCHEMA public TO rag_user; | ||
| </ | </ | ||
| - | Legen Sie in ihrem Projekt | + | Erstellen |
| - | < | + | <code properties> |
| spring.datasource.url=jdbc: | spring.datasource.url=jdbc: | ||
| spring.datasource.username=rag_user | spring.datasource.username=rag_user | ||
| Zeile 17: | Zeile 20: | ||
| </ | </ | ||
| - | Überprüfen | + | Studieren |
| + | <code bash> | ||
| + | ./gradlew test | ||
| + | </ | ||
| + | |||
| + | Ergänzen Sie allenfalls das application.yml, | ||
| + | <code yaml> | ||
| + | vectorstore: | ||
| + | pgvector: | ||
| + | enabled: true | ||
| + | table-name: vector_store | ||
| + | indexType: " | ||
| + | lists: 100 | ||
| + | distance-type: | ||
| + | </ | ||
| + | |||
| + | An dieser Stelle sei angemerkt, dass der Test die echte Datenbank verwendet anstatt einer separaten Testdatenbank oder einem Mock. Damit nicht bei jeder Testausführung Duplikate hinzugefügt werden, wurde in der Klasse | ||
| + | |||
| + | Falls zu wenig oder völlig falsche Dokumente vom VectorStore zurückgegeben werden, könnte allenfalls die Indexierung fehlerhaft sein. Sie können | ||
| + | |||
| + | <code bash> | ||
| + | psql -U postgres -d ragdb | ||
| + | </ | ||
| + | <code sql> | ||
| + | REINDEX TABLE vector_store; | ||
| + | </ | ||
| + | |||