{ "id": "chatgpt-conv-001", "title": "Python Async Tutorial", "create_time": 1704067200.0, "update_time": 1704153600.0, "project_title": "Learning Python", "mapping": { "node-root": { "id": "node-root", "parent": null, "children": ["node-uec"], "message": null }, "node-uec": { "id": "node-uec", "parent": "node-root", "children": ["node-1"], "message": { "id": "node-uec", "author": {"role": "user"}, "create_time": null, "content": { "content_type": "user_editable_context", "user_profile": "Preferred name: Jesse", "user_instructions": "The user provided the additional info about how they would like you to respond:\n```Always cite sources.```" }, "metadata": { "is_visually_hidden_from_conversation": true } } }, "node-1": { "id": "node-1", "parent": "node-uec", "children": ["node-2"], "message": { "id": "node-1", "author": {"role": "user"}, "create_time": 1704067200.0, "content": { "content_type": "text", "parts": ["How does async/await work in Python?"] } } }, "node-2": { "id": "node-2", "parent": "node-1", "children": ["node-mm-user"], "message": { "id": "node-2", "author": {"role": "assistant"}, "create_time": 1704067210.0, "content": { "content_type": "text", "parts": ["Async/await in Python allows you to write concurrent code using coroutines.\n\n```python\nimport asyncio\n\nasync def main():\n await asyncio.sleep(1)\n print('Done!')\n\nasyncio.run(main())\n```"] } } }, "node-mm-user": { "id": "node-mm-user", "parent": "node-2", "children": ["node-mm-assistant"], "message": { "id": "node-mm-user", "author": {"role": "user"}, "create_time": 1704067300.0, "content": { "content_type": "multimodal_text", "parts": [ {"content_type": "audio_transcription", "text": "What is the capital of France?", "direction": "in", "decoding_id": null}, {"content_type": "real_time_user_audio_video_asset_pointer", "frames_asset_pointers": [], "video_container_asset_pointer": null, "audio_asset_pointer": {"content_type": "audio_asset_pointer", "asset_pointer": "sediment://file_user001", "size_bytes": 50000, "format": "wav", "metadata": {"start": 0.0, "end": 2.5}}, "audio_start_timestamp": 1.0} ] }, "metadata": {"voice_mode_message": true} } }, "node-mm-assistant": { "id": "node-mm-assistant", "parent": "node-mm-user", "children": ["node-mm-user-rev"], "message": { "id": "node-mm-assistant", "author": {"role": "assistant"}, "create_time": 1704067305.0, "content": { "content_type": "multimodal_text", "parts": [ {"content_type": "audio_transcription", "text": "The capital of France is Paris.", "direction": "out", "decoding_id": null}, {"content_type": "audio_asset_pointer", "asset_pointer": "sediment://file_assistant001", "size_bytes": 80000, "format": "wav", "metadata": {"start": 0.0, "end": 3.2}} ] } } }, "node-mm-user-rev": { "id": "node-mm-user-rev", "parent": "node-mm-assistant", "children": ["node-image-only"], "message": { "id": "node-mm-user-rev", "author": {"role": "user"}, "create_time": 1704067400.0, "content": { "content_type": "multimodal_text", "parts": [ {"content_type": "real_time_user_audio_video_asset_pointer", "frames_asset_pointers": [], "video_container_asset_pointer": null, "audio_asset_pointer": {"content_type": "audio_asset_pointer", "asset_pointer": "sediment://file_user002", "size_bytes": 30000, "format": "wav", "metadata": {"start": 0.0, "end": 1.5}}, "audio_start_timestamp": 5.0}, {"content_type": "audio_transcription", "text": "Tell me more please.", "direction": "in", "decoding_id": null} ] } } }, "node-image-only": { "id": "node-image-only", "parent": "node-mm-user-rev", "children": [], "message": { "id": "node-image-only", "author": {"role": "user"}, "create_time": 1704067500.0, "content": { "content_type": "multimodal_text", "parts": [ {"content_type": "image_asset_pointer", "asset_pointer": "file-service://image001"} ] } } } } }