Even with pgvector, there's no good way to write a simple tutorial for embedding newbies.
Even with pgvector, there's no good way to write a simple tutorial for embedding newbies.
I'm coming at this from a perspective of a competent dev trying to build a tool with OpenAI APIs - which, from what I can tell, is a growing topic.
If you're experienced with building APIs and new to the LLM stuff - skip the langchain and chromadb nonsense. Just use the OpenAI APIs and pgvector.
Chromadb and langchain are usefull when writing notebook prototypes to get an idea of how this stuff works - but discard immediately after that phase and save yourself the trouble of porting later.
MySQL is very attached to /etc/mysql, /var/log/mysql and /var/lib/mysql, which makes sense if one thinks of it as a piece of a distribution and makes no sense if one thinks of it as a service that stores data in a filesystem or directory that one sets up for the purpose. Apparmor and (don’t get me started) SELinux dig this in deeper. What if you want two MySQLs on one host? What if you don’t want to mount something on /var/lib/mysql?
If mysqld were invoked by pointing it at a configuration and data and it just worked, I’d be more okay with it.
The fact that I really don’t want to couple upgrades of MySQL to distro upgrades is just icing on the cake.