The file vectors feature is still in beta and is only available on Private IPFS. Please contact the team at [email protected] if you have any issues.
A common nusance when building AI apps is context embeddings. If you use a traditional stack you generall have to store an embedding, vectorize it, store the vector, then when you query a vector you’ll get another reference to the file which you then have to fetch again. Pinata’s solution is much more elegant. With Pinata’s file vectoring you can upload a file and vector it at the same time.
When it comes time to query a vector, you have the option to either list your query results and judge the matching score, or just return the highest scoring file itself.
This enables develops to build AI applications faster and with less code!
During the public beta, Pinata Vector Storage has the following limits:
What this means
You can organize your vector embeddings into up to 5 searchable indexes using Pinata Groups. Across all these groups, you can store a total of 10,000 vector embeddings corresponding to files stored on Pinata.
There are two ways you can vectorize file uploads, and with both options files must be part of a group in order for vectors and queries to work.
If you use the Files SDK you can vectorize a file on upload.
If you already have a file that’s been uploaded and it’s part of a group then you can vectorize it.
After a file has been vectorized and it’s part of a group, you can query vectors for a given group.
This will return the following type:
A unique feature in the SDK is if you pass in the returnFile
flag then you will get the file and it’s contents rather than just the reference to the file.
If at any point you need to delete vectors for a file you can do so with the deleteVectors
method in the SDK.
The file vectors feature is still in beta and is only available on Private IPFS. Please contact the team at [email protected] if you have any issues.
A common nusance when building AI apps is context embeddings. If you use a traditional stack you generall have to store an embedding, vectorize it, store the vector, then when you query a vector you’ll get another reference to the file which you then have to fetch again. Pinata’s solution is much more elegant. With Pinata’s file vectoring you can upload a file and vector it at the same time.
When it comes time to query a vector, you have the option to either list your query results and judge the matching score, or just return the highest scoring file itself.
This enables develops to build AI applications faster and with less code!
During the public beta, Pinata Vector Storage has the following limits:
What this means
You can organize your vector embeddings into up to 5 searchable indexes using Pinata Groups. Across all these groups, you can store a total of 10,000 vector embeddings corresponding to files stored on Pinata.
There are two ways you can vectorize file uploads, and with both options files must be part of a group in order for vectors and queries to work.
If you use the Files SDK you can vectorize a file on upload.
If you already have a file that’s been uploaded and it’s part of a group then you can vectorize it.
After a file has been vectorized and it’s part of a group, you can query vectors for a given group.
This will return the following type:
A unique feature in the SDK is if you pass in the returnFile
flag then you will get the file and it’s contents rather than just the reference to the file.
If at any point you need to delete vectors for a file you can do so with the deleteVectors
method in the SDK.