Попробуйте без аутентификации Firebase (временное решение): № 2 (комментарий)
Наш стек состоит из Next.js, Rust, Postgres, MeiliSearch и Firebase Auth для аутентификации. Пожалуйста, зарегистрируйте учетную запись Firebase и создайте проект.
В Firebase перейдите в «Настройки проекта» -> «Учетные записи служб», сгенерируйте закрытый ключ и сохраните его внутри firebaseAdmin/cert/dev.json
если он предназначен для разработки, или prod.json, если он предназначен для производства.
После этого убедитесь, что вы установили зависимости перед запуском приложения.
npm install
npm run db:deploy
npm run dev
(для разработки)npm run build
(для производства)npm run start
(для производства) После запуска «dev» или «build» вы обнаружите встроенное расширение в папке ./client/extension/build
. Затем вы можете загрузить эту папку как распакованное расширение в свой браузер.
Есть несколько проблем с текущими агентами браузера. Здесь мы объясняем проблемы и способы их решения.
Для этого существует несколько методов: от отправки сокращенной формы HTML в GPT-3, создания ограничивающей рамки с идентификаторами и отправки ее в GPT-4-vision для выполнения действий или прямого запроса GPT-4-vision для получения Координаты X и Y элемента. Однако ни один из этих методов не был надежным; все они привели к галлюцинациям.
Чтобы решить эту проблему, мы разработали новую технику, при которой мы индексируем весь DOM в MeiliSearch, позволяя GPT-4-vision генерировать команды для того, какой внутренний текст элемента следует щелкнуть, скопировать или выполнить другие действия. Затем мы выполняем поиск по индексу сгенерированного текста и получаем идентификатор элемента, чтобы отправить его обратно в браузер для принятия мер. Здесь есть несколько ограничений, но мы реализовали некоторые методы для их преодоления, например, работу с одним и тем же текстом в нескольких элементах или нажатием на значок (мы все еще работаем над этим).
Чтобы GPT не мешал выполнению задач, мы используем технику, похожую на генерацию с расширенным поиском, но мы называем ее как генерация с расширенным поиском. По сути, когда пользователь создает рабочий процесс, мы не записываем экран, микрофон или камеру, но мы записываем изменения элемента DOM для каждого действия (щелчок, ввод текста и т. д.), которое предпринимает пользователь. Затем мы используем название рабочего процесса, цель и записанные действия для создания набора задач. Всякий раз, когда мы выполняем задачу, мы включаем в подсказку все действия, предпринятые пользователем в этом конкретном домене. Таким образом, GPT продолжает выполнять задачу, даже если пользователь не указал очень краткое название и цель; их действия помогут GPT выполнить задачу.