One way to send images to the Chat API is via encoding it to base64 and creating a conversation turn as shown below, with the field {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{base64_image}"}}.
However, that doesn’t seem to work for the Assistant API.
Based on your previous comment (not the reference to the API docs), I would assume that file upload is the way for using images in the Assistant API like this
oai_file = oai_client.files.create(file=open(image_path, "rb"), purpose="vision")
turn = {
"role": "user",
"content": [
{"type": "text", "text": prompt.instruction},
{"type": "image_file", "image_file": {"file_id": oai_file.id}},
],
}