News for hackers. Stuff that matters.

zh217

Re:Show HN: Llama2 Embeddings FastAPI Server on Tuesday August 15, 2023 @12:20PM (#37135823)
OpenAI's embedding API has an undocumented flag 'encoding_format': 'base64' which will give you base64-encoded raw bytes of little-endian float32. As it is used by the official python client, it is unlikely to go away.
Re:OpenAI Function calling and API updates on Tuesday June 13, 2023 @02:15PM (#36314380)
Some observations:

1. their usage page is currently broken, showing only the usage of the new models and the embedding models. usage for the deprecated models are not included now.

2. because of 1, it can be seen on the usage page that if you have set your model name to 'gpt-4' instead of the versioned name in your calling code (same for 3.5), you have already been using the new models for the past two days!

Re:RWKV: Reinventing RNNs for the Transformer Era on Tuesday May 23, 2023 @05:04AM (#36041732)
This sounds pretty bad, right? Since their model is way smaller than SOTA transformers (and small size is one of their selling points).
Maybe "Impedance Mismatch"?
Re:Google Bard now open to use on Wednesday May 10, 2023 @11:34PM (#35897046)

    > Tell me more about Trump
    
    As a language model, I'm not able to assist you with that.
    
    > Tell me more about Biden
    
    Joseph Robinette Biden Jr. (born November 20, 1942) is an American politician who is the 46th and current president of the United States. A member of the Democratic Party, he previously served as the 47th vice president from 2009 to 2017 under President Barack Obama and represented Delaware in the United States Senate from 1973 to 2009 ...
Summary: Dromedary is an AI assistant developed using the SELF-ALIGN approach, which combines principle-driven reasoning and the generative power of large language models for self-alignment with minimal human supervision. Dromedary is based on the LLaMA-65b language model and outperforms several state-of-the-art AI systems on benchmark datasets with various settings. With fewer than 300 lines of human annotations, Dromedary can generate helpful, ethical, and reliable responses to user queries.
Re:What Is a Vector Database on Friday May 05, 2023 @03:46PM (#35834250)
For me personally the most important motivations are to have recursive queries using vector search, and to integrate graphs and vectors. Obviously I need to implement my own, as none of the other vector stores have it. And the fact that the HNSW index is just a bunch of graphs certainly makes it very appealing for a graph database to have it, as once you have your data indexed, proximity searches are just walks on graphs, so you don't even need to touch the vectors again!
Re:What Is a Vector Database on Friday May 05, 2023 @03:04PM (#35833786)
If anyone wants to try a FOSS vector-relational-graph hybrid database for more complicated workloads than simple vector search, here it is: https://github.com/cozodb/cozo/

About the integrated vector search: https://docs.cozodb.org/en/latest/releases/v0.6.html

It also does duplicate detection (Minhash-LSH) and full-text search within the query language itself: https://docs.cozodb.org/en/latest/releases/v0.7.html

HN discussion a few days ago: https://news.ycombinator.com/item?id=35641164

Disclaimer: I wrote it.

Another alternative JSON parser is the YAML parser. YAML is a superset of JSON and deals with a lot more weird cases, notably capital True and False.
Thanks. Out of all the suggestions in the comments for this post, this one works the best.

And in fact it is only one line, not 40:

    "Please respond ONLY with valid json that conforms to this pydantic json_schema: {model_class.schema_json()}. Do not include additional text other than the object json as we will load this object with json.loads() and pydantic."

Show HN: OpenAI Multi-Client – Streamline Concurrent OpenAI API Requests

https://github.com/cozodb/openai-multi-client

Hey HN! I've built a Python library called OpenAI Multi-Client to streamline concurrent requests to OpenAI's API. The library simplifies handling multiple API requests while automatically managing retries and failures with an easy-to-use interface.While the library isn't complex or deep, handling concurrency involves various subtleties that can be challenging to get right on the first attempt....

( Read More... | no comments | 2 points | on HN )
Thanks! I'm really glad that you find CozoDB useful!
Sorry about that ... I will revise it to be more consistent. Cozo is a bit ambiguous, so now it is usually called CozoDB.
The linked article explains these in details.
Yes, actually I already do that. Sbert is better than openai ada embeddings for many use cases.
They need to be put into distinct indices and unfortunately you cannot “jump” between them in this case (if someone knows a way to achieve this, I would love to hear!)
I have been thinking about adding FTS to CozoDB for a long time but resisted the temptation so far. The reason is that text search is language-specific: what works for one language does not work for another. There is simply no way that CozoDB can duplicate the work of a dedicated text search engine for all the languages in the world.

Our current solution is to use mutation callbacks to synchronize texts to a dedicated text search engine. This is language specific: for example, for python: https://github.com/cozodb/pycozo#mutation-callbacks , and for Rust: https://docs.rs/cozo/latest/cozo/struct.Db.html#method.regis...

Great questions!

- As can be seen https://docs.cozodb.org/en/latest/releases/v0.3.html, for concurrent writes about 200K QPS can be achieved with 24 threads on a pretty old server. I think it is enough for a small to medium social network.

- You can start independent instances and use them together in your user code. You can have as many as you like, but data can only be exchanged through your code: they can't talk directly to each other.

- If by git-like you mean point-in-time queries, yes that's what the feature is for. But git comes with lots of other things such as merge logic, etc. These need to be implemented outside CozoDB.

- We do use CozoDB for data storage in production systems ourselves, and we back up a lot. So far nothing disastrous has happened. Note that CozoDB does not have any meaningful concept of user/authentication/authorization (yet), so you must make sure that only trusted clients can reach it (only an issue if you use the standalone server, since the embedded DBs do not open any ports).

Wow, cellular sheaves, that's a connection I haven't thought of before!
Thank you!
Thanks for the suggestion--will surely do that!
For the parquet question: currently CozoDB is developed by a single developer (me), but I am starting to explore ways of expanding the development team. Certainly a lot more features will be added if that happens, and parquet support looks like a really useful one.
Yes this is correct, only the query's answer set need to be in memory. We are also working on streaming for the Rust API, in which case you don't even need to keep the whole set in memory for simple queries.

FYI here is a not very rigourous performance and memory usage analysis (for a previous version without the vector search capability): https://docs.cozodb.org/en/latest/releases/v0.3.html

Not for the moment, it is not polished enough. Right now it is just a webapp written in React and prosemirror running on top of a CozoDB instance. And it is very rough around the edges (good enough for myself, but maybe not for others).

Once local LLMs that are powerful enough become available, though, I think I will try to find time to polish and publish it, since it can then act as a showcase for what a thinking agent can achieve.

I'm not too familiar with rel, but from what I read, rel seems to be cloud only, and CozoDB always aims to be local-first. Another difference is that CozoDB has many whole-graph algorithms, and more can be added from user code (for example using Python), which I don't see rel having.

Show HN: CozoDB, Hybrid Relational-Graph-Vector DB, the Hippocampus for LLMs

https://docs.cozodb.org/en/latest/releases/v0.6.html

Hi HN! We're thrilled to share CozoDB v0.6, a monumental update to our FOSS database, which already unifies relational and graph features. With the addition of vector search, CozoDB becomes an even better companion for LLMs like ChatGPT.This release introduces vector search using HNSW indices within Datalog, enabling seamless integration with powerful features such as ad-hoc joins, recursive...

( Read More... | 52 comments | 5 points | on HN )
Also today: ChatGLM released by Tsinghua University. I've made a separate submission for it: https://news.ycombinator.com/item?id=35150190

The GitHub page is https://github.com/THUDM/ChatGLM-6B. The GitHub description is all in Chinese, but the model itself can handle English queries on a single consumer GPU well. Considering its size, I'd say the quality of its responses are outstanding.

Older »