Skip to content

Instantly share code, notes, and snippets.

@prvnsmpth
Created April 7, 2025 13:38
Show Gist options
  • Save prvnsmpth/ad922a0e887376e44fcd9c62c8c287ad to your computer and use it in GitHub Desktop.
Save prvnsmpth/ad922a0e887376e44fcd9c62c8c287ad to your computer and use it in GitHub Desktop.
Sample GitHub Copilot Request
POST https://proxy.individual.githubcopilot.com/v1/engines/gpt-4o-copilot/completions HTTP/2.0
x-copilot-async: true
x-copilot-speculative: false
authorization: Bearer <redacted>
x-request-id: 8c405860-a041-41ec-8c3d-c20c42b43189
openai-organization: github-copilot
vscode-sessionid: <redacted>
vscode-machineid: <redacted>
x-github-api-version: 2024-12-15
editor-version: vscode/1.98.2
editor-plugin-version: copilot/1.296.0
copilot-language-server-version: 1.296.0
openai-intent: copilot-ghost
content-type: application/json
user-agent: GithubCopilot/1.296.0
content-length: 16191
accept: */*
accept-encoding: gzip,deflate,br
{"prompt":"// Path: src/fw/apps/system_apps/health/health_card_view.c\n/*\n * Copyright 2024 Google LLC\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n#include \"health_card_view.h\"\n\n#include \"health.h\"\n#include \"health_activity_summary_card.h\"\n#include \"health_sleep_summary_card.h\"\n#include \"health_hr_summary_card.h\"\n\n#include \"applib/app_launch_reason.h\"\n#include \"applib/ui/action_button.h\"\n#include \"applib/ui/content_indicator.h\"\n#include \"applib/ui/content_indicator_private.h\"\n#include \"kernel/pbl_malloc.h\"\n#include \"services/normal/activity/activity_private.h\"\n#include \"services/normal/timeline/health_layout.h\"\n#include \"system/logging.h\"\n#include \"util/time/time.h\"\n\n#define SELECT_INDICATOR_COLOR (PBL_IF_COLOR_ELSE(GColorWhite, GColorBlack))\n#define BACK_TO_WATCHFACE (-1)\n\n// Enum for different card types\ntypedef enum {\n Card_ActivitySummary,\n#if CAPABILITY_HAS_BUILTIN_HRM\n Card_HrSummary,\n#endif\n Card_SleepSummary,\n CardCount\n} Card;\n\n// Main structure for card view\ntypedef struct HealthCardView {\n Window window;\n HealthData *health_data;\n Card current_card_index;\n Layer *card_layers[CardCount];\n Animation *slide_animation;\n Layer select_indicator_layer;\n Layer down_arrow_layer;\n Layer up_arrow_layer;\n ContentIndicator down_indicator;\n ContentIndicator up_indicator;\n} HealthCardView;\n\nstatic Layer* (*s_card_view_create[CardCount])(HealthData *health_data) = {\n [Card_ActivitySummary] = health_activity_summary_card_create,\n#if CAPABILITY_HAS_BUILTIN_HRM\n [Card_HrSummary] = health_hr_summary_card_create,\n#endif\n [Card_SleepSummary] = health_sleep_summary_card_create,\n};\n\nstatic void (*s_card_view_select_click_handler[CardCount])(Layer *layer) = {\n [Card_ActivitySummary] = health_activity_summary_card_select_click_handler,\n#if CAPABILITY_HAS_BUILTIN_HRM\n [Card_HrSummary] = health_hr_summary_card_select_click_handler,\n#endif\n [Card_SleepSummary] = health_sleep_summary_card_select_click_handler,\n};\n\nstatic GColor (*s_card_view_get_bg_color[CardCount])(Layer *layer) = {\n [Card_ActivitySummary] = health_activity_summary_card_get_bg_color,\n#if CAPABILITY_HAS_BUILTIN_HRM\n [Card_HrSummary] = health_hr_summary_card_get_bg_color,\n#endif\n [Card_SleepSummary] = health_sleep_summary_card_get_bg_color,\n};\n\nstatic bool (*s_card_view_show_select_indicator[CardCount])(Layer *layer) = {\n [Card_ActivitySummary] = health_activity_summary_show_select_indicator,\n#if CAPABILITY_HAS_BUILTIN_HRM\n [Card_HrSummary] = health_hr_summary_show_select_indicator,\n#endif\n [Card_SleepSummary] = health_sleep_summary_show_select_indicator,\n};\n\n////////////////////////////////////////////////////////////////////////////////////////////////////\n// Private Functions\n//\n\nstatic int prv_get_next_card_idx(Card current, bool up) {\n const int direction = up ? 1 : -1;\n int next = current + direction;\n\n// Skip over the HR card if we don't support it\n#if CAPABILITY_HAS_BUILTIN_HRM\n if (next == Card_HrSummary && !activity_is_hrm_present()) {\n next = next + direction;\n }\n // if heart rate is diabled, change the order of cards to Activiy <-> Sleep <-> HR\n else if (activity_is_hrm_present() && !activity_prefs_heart_rate_is_enabled()) {\n if (current == Card_ActivitySummary) {\n next = up ? Card_SleepSummary : BACK_TO_WATCHFACE;\n } else if (current == Card_SleepSummary) {\n next = up ? Card_HrSummary : Card_ActivitySummary;\n } else if (current == Card_HrSummary) {\n next = up ? CardCount : Card_SleepSummary;\n }\n }\n#endif\n\n return next;\n}\n\nstatic void prv_select_indicator_layer_update_proc(Layer *layer, GContext *ctx) {\n action_button_draw(ctx, layer, SELECT_INDICATOR_COLOR);\n}\n\nstatic void prv_refresh_select_indicator(HealthCardView *health_card_view) {\n Layer *card_layer = health_card_view->card_layers[health_card_view->current_card_index];\n\n const bool is_hidden = !s_card_view_show_select_indicator[health_card_view->current_card_index](\n card_layer);\n\n layer_set_hidden(&health_card_view->select_indicator_layer, is_hidden);\n}\n\nstatic void prv_content_indicator_setup_direction(HealthCardView *health_card_view,\n ContentIndicator *content_indicator,\n Layer *indicator_layer,\n ContentIndicatorDirection direction) {\n Layer *card_layer = health_card_view->card_layers[health_card_view->current_card_index];\n\n GColor card_bg_color = s_card_view_get_bg_color[health_card_view->current_card_index](card_layer);\n\n content_indicator_configure_direction(content_indicator,\n direction, card_bg_color, SELECT_INDICATOR_COLOR);\n}\n\nstatic void prv_refresh_content_indicators(HealthCardView *health_card_view) {\n prv_content_indicator_setup_direction(health_card_view,\n &health_card_view->up_indicator,\n &health_card_view->up_arrow_layer,\n ContentIndicatorDirectionUp);\n prv_content_indicator_setup_direction(health_card_view,\n &health_card_view->down_indicator,\n &health_card_view->down_arrow_layer,\n ContentIndicatorDirectionDown);\n\n bool is_up_visible = true;\n if (prv_get_next_card_idx(health_card_view->current_card_index, true) >= CardCount) {\n is_up_visible = false;\n }\n\n content_indicator_set_content_available(&health_card_view->up_indicator,\n ContentIndicatorDirectionUp,\n is_up_visible);\n\n // Down is always visible (the watchface is always an option)\n content_indicator_set_content_available(&health_card_view->down_indicator,\n ContentIndicatorDirectionDown,\n true);\n}\n\nstatic void prv_hide_content_indicators(HealthCardView *health_card_view) {\n content_indicator_set_content_available(&health_card_view->up_indicator,\n ContentIndicatorDirectionUp,\n false);\n content_indicator_set_content_available(&health_card_view->down_indicator,\n ContentIndicatorDirectionDown,\n false);\n}\n\nstatic void prv_set_window_background_color(HealthCardView *health_card_view) {\n Layer *card_layer = health_card_view->card_layers[health_card_view->current_card_index];\n window_set_background_color(&health_card_view->window,\n s_card_view_get_bg_color[health_card_view->current_card_index](card_layer));\n}\n\n#define NUM_MID_FRAMES 1\n\nstatic void prv_bg_animation_update(Animation *animation, AnimationProgress normalized) {\n HealthCardView *health_card_view = animation_get_context(animation);\n const AnimationProgress bounce_back_length =\n (interpolate_moook_out_duration() * ANIMATION_NORMALIZED_MAX) /\n interpolate_moook_soft_duration(NUM_MID_FRAMES);\n if (normalized >= ANIMATION_NORMALIZED_MAX - bounce_back_length) {\n prv_set_window_background_color(health_card_view);\n }\n}\n\nstatic void prv_bg_animation_started_handler(Animation *animation, void *context) {\n HealthCardView *health_card_view = context;\n\n layer_set_hidden(health_card_view->card_layers[health_card_view->current_card_index], false);\n\n layer_set_hidden(&health_card_view->select_indicator_layer, true);\n\n prv_hide_content_indicators(health_card_view);\n}\n\nstatic void prv_bg_animation_stopped_handler(Animation *animation, bool finished, void *context) {\n HealthCardView *health_card_view = context;\n\n for (int i","suffix":"if (!finished) {\n prv_set_window_background_color(health_card_view);\n } else {\n prv_refresh_select_indicator(health_card_view);\n prv_refresh_content_indicators(health_card_view);\n }\n}\n\nstatic const AnimationImplementation prv_bg_animation_implementation = {\n .update = &prv_bg_animation_update\n};\n\nstatic int64_t prv_interpolate_moook_soft(int32_t normalized, int64_t from, int64_t to) {\n return interpolate_moook_soft(normalized, from, to, NUM_MID_FRAMES);\n}\n\nstatic Animation* prv_create_slide_animation(Layer *layer, GRect *from_frame, GRect *to_frame) {\n Animation *anim = (Animation *)property_animation_create_layer_frame(layer, from_frame, to_frame);\n animation_set_duration(anim, interpolate_moook_soft_duration(NUM_MID_FRAMES));\n animation_set_custom_interpolation(anim, prv_interpolate_moook_soft);\n return anim;\n}\n\n// Create animation\nstatic void prv_schedule_slide_animation(HealthCardView *health_card_view,\n Card next_card_index, bool slide_up) {\n animation_unschedule(health_card_view->slide_animation);\n health_card_view->slide_animation = NULL;\n\n GRect window_bounds = window_get_root_layer(&health_card_view->window)->bounds;\n\n Layer *current_card_layer = health_card_view->card_layers[health_card_view->current_card_index];\n Layer *next_card_layer = health_card_view->card_layers[next_card_index];\n\n GRect curr_stop = window_bounds;\n curr_stop.origin.y = slide_up ? window_bounds.size.h : -window_bounds.size.h;\n GRect next_start = window_bounds;\n next_start.origin.y = slide_up ? -window_bounds.size.h : window_bounds.size.h;\n\n Animation *curr_out = prv_create_slide_animation(current_card_layer, &window_bounds, &curr_stop);\n Animation *next_in = prv_create_slide_animation(next_card_layer, &next_start, &window_bounds);\n\n Animation *bg_anim = animation_create();\n animation_set_duration(bg_anim, interpolate_moook_soft_duration(NUM_MID_FRAMES));\n animation_set_handlers(bg_anim, (AnimationHandlers){\n .started = prv_bg_animation_started_handler,\n .stopped = prv_bg_animation_stopped_handler,\n }, health_card_view);\n animation_set_implementation(bg_anim, &prv_bg_animation_implementation);\n\n health_card_view->slide_animation = animation_spawn_create(curr_out, next_in, bg_anim, NULL);\n animation_schedule(health_card_view->slide_animation);\n\n health_card_view->current_card_index = next_card_index;\n}\n\n\n////////////////////////////////////////////////////////////////////////////////////////////////////\n// Callback Functions\n//\n\n// Up/Down click handler\nstatic void prv_up_down_click_handler(ClickRecognizerRef recognizer, void *context) {\n HealthCardView *health_card_view = context;\n const bool slide_up = (click_recognizer_get_button_id(recognizer) == BUTTON_ID_UP);\n const int next_card_index = prv_get_next_card_idx(health_card_view->current_card_index, slide_up);\n\n if (next_card_index < 0) {\n // Exit\n app_window_stack_pop_all(true);\n } else if (next_card_index >= CardCount) {\n // Top of the list (no-op)\n // TODO: maybe we want an animation?\n return;\n } else {\n // animate the cards' positions\n prv_schedule_slide_animation(health_card_view, next_card_index, slide_up);\n }\n}\n\n// Select click handler\nstatic void prv_select_click_handler(ClickRecognizerRef recognizer, void *context) {\n HealthCardView *health_card_view = context;\n Layer *layer = health_card_view->card_layers[health_card_view->current_card_index];\n s_card_view_select_click_handler[health_card_view->current_card_index](layer);\n health_card_view_mark_dirty(health_card_view);\n}\n\n// Click config provider\nstatic void prv_click_config_provider(void *context) {\n window_set_click_context(BUTTON_ID_UP, context);\n window_set_click_context(BUTTON_ID_SELECT, context);\n window_set_click_context(BUTTON_ID_DOWN, context);\n window_single_click_subscribe(BUTTON_ID_UP, prv_up_down_click_handler);\n window_single_click_subscribe(BUTTON_ID_SELECT, prv_select_click_handler);\n window_single_click_subscribe(BUTTON_ID_DOWN, prv_up_down_click_handler);\n}\n\n\n///////////////////////////////////////////////////////////////////////////////////////////////////\n// API Functions\n//\n\nHealthCardView *health_card_view_create(HealthData *health_data) {\n HealthCardView *health_card_view = app_malloc_check(sizeof(HealthCardView));\n *health_card_view = (HealthCardView) {\n .health_data = health_data,\n };\n window_init(&health_card_view->window, \"Health Card View\");\n window_set_click_config_provider_with_context(&health_card_view->window,\n prv_click_config_provider, health_card_view);\n Layer *window_root = window_get_root_layer(&health_card_view->window);\n\n // create and add all card layers to window root layer\n for (int i = 0; i < CardCount; i++) {\n health_card_view->card_layers[i] = s_card_view_create[i](health_data);\n layer_add_child(window_root, health_card_view->card_layers[i]);\n }\n\n // set starting card based on launch args\n HealthLaunchArgs launch_args = { .args = app_launch_get_args() };\n\n health_card_view->current_card_index =\n (launch_args.card_type == HealthCardType_Sleep) ? Card_SleepSummary : Card_ActivitySummary;\n\n // set window background\n prv_set_window_background_color(health_card_view);\n\n // position current card\n layer_set_frame(health_card_view->card_layers[health_card_view->current_card_index],\n &window_root->frame);\n\n // setup select indicator\n layer_init(&health_card_view->select_indicator_layer, &window_root->frame);\n layer_add_child(window_root, &health_card_view->select_indicator_layer);\n layer_set_update_proc(&health_card_view->select_indicator_layer,\n prv_select_indicator_layer_update_proc);\n\n // setup content indicators\n const int content_indicator_height = PBL_IF_ROUND_ELSE(18, 11);\n const GRect down_arrow_layer_frame = grect_inset(window_root->frame,\n GEdgeInsets(window_root->frame.size.h - content_indicator_height, 0, 0));\n layer_init(&health_card_view->down_arrow_layer, &down_arrow_layer_frame);\n layer_add_child(window_root, &health_card_view->down_arrow_layer);\n content_indicator_init(&health_card_view->down_indicator);\n\n const GRect up_arrow_layer_frame = grect_inset(window_root->frame,\n GEdgeInsets(0, 0, window_root->frame.size.h - content_indicator_height));\n layer_init(&health_card_view->up_arrow_layer, &up_arrow_layer_frame);\n layer_add_child(window_root, &health_card_view->up_arrow_layer);\n content_indicator_init(&health_card_view->up_indicator);\n\n prv_refresh_content_indicators(health_card_view);\n\n return health_card_view;\n}\n\nvoid health_card_view_destroy(HealthCardView *health_card_view) {\n // destroy cards\n health_activity_summary_card_destroy(health_card_view->card_layers[Card_ActivitySummary]);\n health_sleep_summary_card_destroy(health_card_view->card_layers[Card_SleepSummary]);\n // destroy self\n window_deinit(&health_card_view->window);\n app_free(health_card_view);\n}\n\nvoid health_card_view_push(HealthCardView *health_card_view) {\n app_window_stack_push(&health_card_view->window, true);\n}\n\nvoid health_card_view_mark_dirty(HealthCardView *health_card_view) {\n layer_mark_dirty(health_card_view->card_layers[health_card_view->current_card_index]);\n}\n","max_tokens":500,"temperature":0,"top_p":1,"n":1,"stop":["\n\n\n","\n```"],"nwo":"pebble-dev/pebble-firmware","stream":true,"extra":{"language":"cpp","next_indent":2,"trim_by_indentation":true,"prompt_tokens":1718,"suffix_tokens":1620}}
HTTP/2.0 200
content-security-policy: default-src 'none'; sandbox
content-type: text/event-stream
strict-transport-security: max-age=31536000
x-request-id: 8c405860-a041-41ec-8c3d-c20c42b43189
date: Mon, 07 Apr 2025 13:26:18 GMT
x-github-backend: Kubernetes
x-github-request-id: 245C:3CBC8:375339:3CADE8:67F3D275
content-length: 10946
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"index":0,"finish_reason":null,"logprobs":null,"p":"aaaaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" =","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" ","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"0","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":";","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" i","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" \u003c","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" Card","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"Count","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":";","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" i","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"++)","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" {\n","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" ","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" layer","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"a"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_set","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_hidden","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}}}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"(","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"health","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"a"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_card","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_view","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"-\u003e","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"card","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_layers","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}}}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"[i","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"],","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" i","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" !=","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" health","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}}}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_card","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_view","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"-\u003e","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"current","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}}}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_card","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":"_index","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"a"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":");\n","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" ","index":0,"finish_reason":null,"logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaaaa"}]}
data: {"id":"chatcmpl-BJgmPEdTlq2OXojc8M5suQGGSyuVA","created":1744032377,"model":"gpt-4o-mini","choices":[{"text":" }\n","index":0,"finish_reason":"stop","logprobs":null,"content_filter_result":{"error":{"code":"content_filter_error","message":"The contents are not filtered"}},"p":"aaaa"}]}
data: [DONE]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment