Pinecone Assistant does not return Metadata

I am assessing the Pinecone Assistant, and finding it is very good in many ways.
Currently your example documentation states that metadata can be supplied with a file upload, and then retrieved. While I find that I can submit metadata with a file upload using the Python Client, it is never returned when the file is checked.

This is moderately inconvenient, as I have a lot of files to set as context for the assistant and I only want to upsert newer files. I am currently falling back on the updated_on field in the file info, but this is obviously when the file was last updated in Pinecone, not when it was last updated in the git repo which I am supplying in the metadata.

This seems like a bug as the metadata field is clearly listed in the docs, so I would expect it to work.
Note that both the list and describe commands return null / {} for metadata, even though the docs plug for the describe command clearly states it should be returned " The describe_file endpoint provides the current status and metadata of a file uploaded to an assistant."

Hey @chaffelson , could you show how you are uploading the file please?

I just tried uploading a file with metadata, and I can see the metadata in the response. It also shows in the response for describe_file and list_files, and in the Pinecone dashboard.

Maybe try hardcoding the metadata first, and get that working before passing in a value.

1 Like

Thanks for prompting me to recheck this, you are correct to point at it.
I was constructing the metadata using some logic around timestamps and mistakenly emptying the metadata dict when the ts wasn’t found.
I’m now submitting a valid {“k”:“v”} dict and it’s working.

Thanks!

1 Like