Uploaded files processing

There is no documentation for the internals of ChatGPT, as it is OpenAI’s proprietary product. However the mechanism is similar to API’s ‘Assistants’ in terms of how files are handled, either when as part of an assistant (called a GPT in this case), or as an attachment from a user.

The main difference from Assistants is that files of a ChatGPT GPT are presented to both Knowledge and to Code Interpreter automatically when those are enabled, for supported file types, while an API developer takes more deliberate action and chooses the tool associated with a file.

The files that are provided to code interpreter are simply placed in the session mount point for use by Python code. A notation is given to the AI of what files are available.

The same files for knowledge are chunked to parts, and use embeddings for a similarity vector database.

The vector database is presented to the AI as a tool, where the AI can emit a search query, and get chunks of documents back as that tool’s return, if not the whole shorter document.

Both GPT files and user upload files (except images) go to the same places, and cannot be easily distinguished by the AI from the information presentation.

I hope that more clearly answers your question.