ggozad/haiku.rag: Retrieval Augmented Generation based on #sqlite
▻https://github.com/ggozad/haiku.rag
— Permalink
#LLMs #RAG #generativeai #sqlitevec
ggozad/haiku.rag: Retrieval Augmented Generation based on #sqlite
▻https://github.com/ggozad/haiku.rag
— Permalink
#LLMs #RAG #generativeai #sqlitevec
kd2org/karadav: Lightweight NextCloud compatible WebDAV server
▻https://github.com/kd2org/karadav
https://github.com/kd2org/karadav/blob/main/doc/scr_index.jpg?raw=true
This is a simple and lightweight #WebDAV server, allowing to easily set up a #file_sharing server compatible with WebDAV and #NextCloud clients. It has no dependencies and good performance.
It is written in #PHP (8+). The only dependency is #SQLite3 for the database.
Its original purpose was to serve as a demo and test for the KD2 WebDAV library, which we developed for Paheko, our non-profit management solution, but it can also be used as a simple but powerful file sharing server.
If you are looking for an even lighter WebDAV server, try also our other server, PicoDAV ▻https://github.com/kd2org/picodav. It isn’t compatible with NextCloud/ownCloud clients, but it is a single file that you can drop anywhere in your document root, nothing to install!
loupe-php/loupe: A #fulltext #search engine with #tokenization, #stemming, #typo_tolerance, #filters and #geo support based on only #PHP and #SQLite.
▻https://github.com/loupe-php/loupe
An SQLite based, PHP-only fulltext search engine.
Loupe…
–…only requires PHP and SQLite, you don’t need anything else - no containers, no nothing
–…is typo-tolerant (based on the State Set Index Algorithm and Levenshtein)
–…supports phrase search using " quotation marks
–…supports filtering (and ordering) on any attribute with any SQL-inspired filter statement
–…supports filtering (and ordering) on Geo distance
–…orders relevance based on a typical TF-IDF Cosine similarity algorithm
…auto-detects languages
–…supports stemming
–…is very easy to use
–…is all-in-all just the easiest way to replace your good old SQL LIKE %...% queries with a way better search experience but without all the hassle of an additional service to manage. SQLite is everywhere and all it needs is your filesystem.
Si le plugin Indexer de SPIP pouvait vraiment être agnostiquement multi-services d’indexation (à continuer d’améliorer, peut-être on peut vraiment)… ça serait un très bon candidat à l’ajout (avec le méga connu elastic search).
Attention que pour celui là faut pas avoir trop de docs non plus, mais pour petits et moyens sites (ils disent vers 50000 max) c’est un super truc facile à mettre en place.
Ha ben tiens !
SEAL stands for: S earch E ngine A bstraction L ayer
The SEAL project is a PHP library designed to simplify the process of interacting with different search engines. It provides a straightforward interface that enables users to communicate with various search engines, including: Meilisearch, Opensearch, Elasticsearch, Algolia, Loupe, Redisearch, Solr, Typesense
De SQLite a MySQL & Inversement grâce au plugin Fusion - SPIP-Contrib
►https://contrib.spip.net/De-SQLite-a-MySQL-Inversement-grace-au-plugin-Fusion
Semblerait il la moins pire méthode pour passer un SPIP sqlite en MySQL...
Voir aussi la doc du plugin Fusion : ►https://contrib.spip.net/Fusion-de-SPIP
Convertir une base de données SQLite vers MySQL/MariaDB - PAB’s blog
▻https://blog.bandinelli.net/index.php?post/2014/03/27/sqlite3-to-mysql
LE script miraculeux pour la conversion sqlite > sql
NB : ne pas oublier de faire un rechercher/remplacer pour virer les chaînes COLLATE NOCASE et COLLATE BINARY avant de lancer l’import du fichier SQL obtenu.
...et ne pas oublier de remettre le AUTO_INCREMENT sur tous les champs id_<objet> qui sont les clés primaire des tables spip_<objet>
#conversion #sqlite #mysql #mariadb #python #utilitaire #SPIP
Sinon, tu as aussi LE plugin miraculeux :
►https://contrib.spip.net/Fusion-de-SPIP
Si vous avez créé votre site avec une base de données en sqlite, et que pour diverses raisons vous voulez le passer en mysql, il n’y a pas vraiment d’outil le permettant facilement.
Mais avec ce plugin, c’est possible et même très simple.
heu... ça ne fonctionne pas si bien que ça si tu as ajouté des champs extras...
Ben ça fonctionne bien pour ceux qui l’utilisent, et sinon faut pas hésiter à proposer des améliorations :)
Le principe, actuellement, c’est de comparer les schémas des deux bases et de n’importer que ce qui existe sur l’hôte (tables et champs).
Mais on peut imaginer un fonctionnement alternatif ou les champs et tables de la source soient créés et importés.
A moins que tu n’aies rencontré un problème encore différent ?
mysql - How to create ENUM type in SQLite ? - Stack Overflow
▻http://stackoverflow.com/questions/5299267/how-to-create-enum-type-in-sqlite/17203007
les réponses 2 et 3 donnent deux possibilités pour simuler le fonctionnement d’une colonne #MySQL de type #ENUM en #SQLite :
– utilisation d’une table stockant les valeurs d’ENUM et de la contrainte #REFERENCES sur la colonne
– utilisation de la contrainte #CHECK sur la colonne
“The latest #SQLite 3.8.7 alpha version is 50% faster than the 3.7.17 release”
▻http://permalink.gmane.org/gmane.comp.db.sqlite.general/90549
Each micro-optimization might improve the performance
by as little as 0.05%. If we get one that improves performance by 0.25%,
that is considered a huge win. Each of these optimizations is unmeasurable
on a real-world system (we have to use cachegrind to get repeatable
run-times) but if you do enough of them, they add up.
Phinx
▻http://phinx.org
Phinx allows developers to alter and manipulate databases in a clear and concise way. It avoids the use of writing SQL by hand and instead offers a powerful #api for creating migrations using #php code.
▻http://docs.phinx.org/en/latest/configuration.html
Phinx currently supports the following database adapters natively: #mysql, PostgreSQL, #sqlite, SQL Server
Grosso merdo c’est l’API SQL de #SPIP ^^
Sergei Dorogin’s technical blog: SQLiteException “database disk image is malformed”
▻http://techblog.dorogin.com/2011/05/sqliteexception-database-disk-image-is.html
Réparer une base de données #sqlite foireuse : checker la base avec PRAGMA integrity_check + dumper la base en sql + nettoyer le dump sql si nécessaire + importer le dump sql dans une nouvelle base sqlite = et zou :)
#spip
Au secours : j’ai un site sous SPIP en SQLite, j’effectue une sauvegarde sous SPIP (qui m’a l’air correctement formatée). Maintenant comment je fais pour installer ça dans un SPIP sous mySQL ?
Moi je suis passé par Adminer sans trop de problème.
C’est expliqué ici : ▻http://contrib.spip.net/Migrer-la-base-SQLite-de-SPIP3-en-MySQL-et-reciproque
Dis-moi s’il y a des trucs foireux chez toi, ton retour m’intéresse
Pour activer la fonction MEDIAN sous #SQLite
se rendre sur http://www.sqlite.org/contrib/download/ et télécharger extension-functions.c ; compiler :
# gcc -g -fPIC -dynamiclib extension-functions.c -o extension-functions.dylib
dans SQLite charger l’extension :
sqlite> .load extension-functions.dylib
utiliser :
sqlite> select MEDIAN(x) WHERE y…
fournit les fonctions :
Math: acos, asin, atan, atn2, atan2, acosh, asinh, atanh, difference, degrees, radians, cos, sin, tan, cot, cosh, sinh, tanh, coth, exp, log, log10, power, sign, sqrt, square, ceil, floor, pi.
String: replicate, charindex, leftstr, rightstr, ltrim, rtrim, trim, replace, reverse, proper, padl, padr, padc, strfilter.
Aggregate: stdev, variance, mode, median, lower_quartile, upper_quartile.
Ha tiens je ne connaissais pas ce module, j’aurais plutôt utilisé #spatialite :
▻http://www.gaia-gis.it/gaia-sins
La liste des fonctions disponibles semble être similaire :
▻http://www.gaia-gis.it/spatialite-2.3.0/spatialite-sql-2.3.0.html
VirtualPG: VirtualPG
▻https://www.gaia-gis.it/fossil/virtualpg/index
VirtualPG is a loadable dynamic #extension to both #sqlite and SpatiaLite. Its intended scope is supporting direct SQL access to #postgresql and PostGIS own tables, so to make any possible kind of data exchange between these two popular open source Spatial DBMSes as straightforward and simple as possible.
Adminer - Database management in single PHP file
►http://www.adminer.org/en
#Adminer is a full-featured database management tool written in PHP. Conversely to #phpMyAdmin, it consist of a single file ready to deploy to the target server. #mysql #sqlite
# git clone git://adminer.git.sourceforge.net/gitroot/adminer/adminer
via @suske
SpatiaLite : SpatiaLite
►https://www.gaia-gis.it/fossil/libspatialite/index
SpatiaLite is an open source library intended to extend the SQLite core to support fully fledged Spatial SQL capabilities.
(...)
SpatiaLite is smoothly integrated into SQLite to provide a complete and powerful Spatial DBMS (mostly OGC-SFS compliant).
Ce pourrait être une piste pour rendre #gis utilisable avec #sqlite, par exemple sous #spip. La libspatialite3 est dispo sous #debian.
J’ai pas testé...
phpliteadmin - PHP-based admin tool to manage SQLite databases - Google Project Hosting
►http://code.google.com/p/phpliteadmin
phpLiteAdmin is a web-based #SQLite database #admin tool written in #PHP with support for SQLite2 and SQLite3. Following in the spirit of the flat-file system used by SQLite, phpLiteAdmin consists of a single source file, phpliteadmin.php, that is dropped into a directory on a server and then visited in a browser.
Premières impressions après quelques essais avec #SPIP3 et ses bases SQLite :
+ installation simple : fichier à la racine, l’éditer et changer 2 variables sous la ligne 35 : $password = « blabli » ; et $subdirectories = true ; => appeler le fichier, il scanne l’arborescence (vu sur mutu SPIP ;-) ), demande le mot de passe et zou...
+ édition de la base sqlite : OK
– export SQL pas utilisable pour réinjecter en MySQL avec phpmyadmin ;
– import/export en général, rien n’a abouti. C’est chatouilleux ces formats.
Pas convaincant en fin de compte. Je vais tester ►http://www.adminer.org/en/editor trouvé grâce à #seenthis_c_est_bon_mangez_en et ►http://seenthis.net/messages/77107
Take a look on a free tool — Valentina Studio. Amazing product! IMO this is the best manager for SQLite for all platforms. ▻http://www.valentina-db.com/en/valentina-studio-overview
Manage Your Database with Adminer | Linux.com
►https://www.linux.com/learn/tutorials/566420-manage-your-database-with-adminer
If you’re looking for a simple way to manage your database effectively, you might want to have a look at Adminer. It’s simple to install, supports multiple databases, and has a number of features you don’t find in phpMyAdmin.
Merci, c’est super-rapide. Je n’ai pas encore pu beaucoup le tester, mais #Adminer a l’air de faire tout dont j’ai besoin en plus simple et rapide que MyPhpAdmin.
Son seul défaut c’est la double licence Apache/GNU qui risque de créer des conflits dans l’avenir. Les auteurs considèrent que c’est un avantage par rapport à MyPhpAdmin qui n’est distribué que sous GNU. Je comprends leur point de vue mais je ne le partage pas.
Perso j’ai du mal à saisir cette histoire de double licences...
Il me semble que le seul intérêt est de pouvoir embarquer le code dans un produit propriétaire, ou de faire un dérivé commercial du soft...
@aris Oui, bien résumé la double licence (qui vaut quand même mieux que la double peine).
Une chose que PhpMyAdmin ne fait pas : importer des dumps présents sur le serveur.
►http://lidl.dofollow.be
« Archivage, recherche et suivi par RSS des offres LIDL. »
C’est la crise, alors pour les radins ;) Observez au passage la puissance de la recherche SQLite FTS4 !
Lita - SQLite Administration Tool
►http://www.dehats.com/drupal/?q=node/58
Lita is a free and open source SQLite database administration tool for Windows, MacOSX and Linux.
#SQLite #Adobe_Air #Windows #OSX #Linux #open_source #application #bases_de_données