Комментарии 6
API к chatGPT
Когда я последний раз тыкал их API, в нём не было возможности прикрепить изображение, хотя в веб версии уже давно можно было картинки скидывать. Что-то поменялось?
Вообще, как эксперимент, тема интересная, сам что-то подобное когда-то давно делал, только у меня "ездило" по панорамам google maps.
Судя по видео, всё равно задержки достаточно серьёзные?
_, buffer = cv2.imencode('.jpg', latest_image)
image_base64 = base64.b64encode(buffer).decode("utf-8")
# Create the current frame message
current_frame_message = {
"role": "user",
"content": [
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_base64}"}},
{"type": "text", "text": "What do you see in this frame? Explain your decision and add to your answer '<GO>' or '<STOP>'"}
]
}
# Build messages array with conversation history
messages = list(self.conversation_history)
# Add context message if this isn't the first frame
if self.robot_state['frames_processed'] > 0:
context_message = self.create_context_message()
messages.append(context_message)
# Add current frame
messages.append(current_frame_message)
# Send to OpenAI API with full conversation context
response = self.openai_client.chat.completions.create(
model="gpt-4o",
messages=messages,
max_tokens=400
)Задержки да, адские, около 1 фпс
хорошая идея и грамотная реализация но мне кажется, что нет смысла полностью лишать мозгов самого робота и генерировать внешние команды на каждый кадр с камеры. Было бы разумней иметь обычно автономного робота с системой высокоуровневых команд и их реализацией на борту. VLM на внешнем ПК можно использовать только в особых случаях. Появился новый объект. - Как реагировать и надо ли реагировать? Появились препятствия исполнению команды. - Что делать далее? Такая система вполне может иметь практический смысл и результат. Скорость обращений к VLM будет не более нескольких событий в минуту или реже. Можно вообще использовать GSM связь и ИИ в облаке. Держите меня в курсе если последуете моему совету. Скорее всего я смогу оказать более конкретную помощь в развитии вашего проекта. Спасибо за статью и Удачи !
Согласен, большинство действий автономного вождения не требует скурпулезного анализа и большого компьюта. Скорее более важна скорость реакции. В end-to-end парадигме это умение модели работать в быстром и «решительном» или медленном но «задумчивом» режимах. Как у Канемана - «думай медленно, решай быстро».
Ну и тоже верно, мозгов робота лишать не нужно, в идеале все мозги держать на колесах (особенно если ездить нужно по открытой).
местности)
В принципе тема подключения VLM, LLN к управлению существующих роботов сейчас в работе у всех ведущих компаний. Вкладываются немыслимые деньги, мозги, ресурсы. Создать, что то новое уже вряд ли удастся.
Разумно повторять биологическую эволюцию, совершенствующую живые организмы последовательно, строя контуры управления, уровень над уровнем. Хорошо проверенные, надежные решения переносятся в инстинкты. Далее идет самообучение и фиксация на генетическом уровне. ROS 2 со своими иерархиями идеально подходит для моделирования и реализации таких вещей. Удачи !

End-to-End беспилотник на VLM в домашних условиях. Часть 1