How to use different files per conversation

Hello,

I am trying to implement following use case:

  • I want to create a bot which performs a preliminary review of a content submitted by users to my platform. The goal is to catch frequently occurring, simple problems with the submitted content in an automated way, so users have a chance to fix the most blatant mistakes, before the content gets passed for a deeper review to carbon-based moderators.
  • To be accepted, the submitted content has to conform to a set of guidelines established by the platform. Currently, the conformance is evaluated by human reviewers. The goal of the bot is to catch the most blatant violations of the guidelines, so human reviewers do not have to give the same answers over and over.
  • The submitted content consist of following information: a topic (a hardcoded enumeration value, one of ~40 possible), two snippets of markdown document, and two snippets of code.
  • Every markdown snippet, and every code snippet, has its own set of quality guidelines, which I collected in separate files and attached to my assistant.
  • Every topic has its own set of topic-specific guidelines. I collected the guidelines in appropriate files, one file per topic, but did not attach them anywhere yet.

I want my assistant to read through the snippets, and review them for the conformance with a) snippet-specific guidelines, each residing in their file, and b) topic-specific guidelines, from a topic-specific file. I managed to upload the files with snippet-specific guidelines to a vector store, and attach it to my assistant. What I am not sure about is: how to make the assistant use the topic-specific guidelines? Should I attach all 40 files to my vector store, or should I attach only the relevant one? If I should attach only the relevant one, then where, and how? To the assistant? To the vector store? To the thread? Upload in a message? What should I do to make the assistant read the file? Will it happen automatically, or should I refer to it from my prompt? Refer how, by name, or by file id?

One thing I want to avoid is adding the text content of the all 40+ files to the “instructions” section of the assistant. After all, only 5 files are interesting per conversation (one per snippet + one topic-specific). I also want to shave off my cost by reducing amount of tokens, and as far as I understand, content of vector stores does not eat up as many tokens as messages (or does it?).

I think I am missing some significant pieces about how files work, and I would appreciate any help and explanation.