Как стать автором
Обновить

Исправляем грамматику с помощью GPT-4 API

Уровень сложностиСредний
Время на прочтение14 мин
Количество просмотров15K
Всего голосов 15: ↑15 и ↓0+15
Комментарии20

Комментарии 20

пусть пользователь сам вводит свой ключ

OpenAI запрещает светить свой ключ где бы то ни было, и это правильно - желающие стащить ваш ключ в интернете имеются

Ключ хранится только в куках браузера и никуда не отправляется.
Ну или вообще - можно скачать мой реп и у себя запускать локально.
Не то чтобы мне нравится такая схема. Просто это единственный способ, как сделать такую прогу общедоступной, не заморачиваясь с биллингом.
В дискорде по OpenAI проекты с использованием API работают по той же схеме, что у меня.
А что вы предлагаете - мне за всех платить?

Так не было бы ссылки, где "потыкать".
У меня тоже ключ вводится только локально. Он живет только на клиенте. Чтобы так сделать, мне пришлось вообще весь проект написать на реакте. Мне было бы комфортнее иметь бекенд, конечно, но нельзя.
Мой проект вы тоже можете скачать и запускать локально.
Проблема в подходе "приложение нигде не задеплоено, вот реп в гитхабе" в том, что обычный Джо никогда не станет заморачиваться с установкой.

Можно попробовать сделать проксирование запросов. С серверной стороны (бекенда) можно посылать команды клиенту выполнить тот или иной запрос к овпенэйай и отправить запрос на ваш сервер. Как пример, сервер отправляет команду на клиента с помощью Server Sent event, клиент обращается в openai api и затем возвращает результат серверу путем REST вызова на вашему бекенду. Таким образом вы делегируете клиенту обращение к апиай чата джипити не имея доступа к клиентским ключам. Это один из других возможных способов как, например запуск прокси на локальном компьютере пользователя в виде веб сервера или написания расширения для гугл-хрома. Что касается монетизации, вы можете рассмотреть продажу вашего сервиса путем размещением вашего апиай на каком-нибудь апиай-маркетплейсе или монетизацию через рекламу или донаты.

Я немного не понял про проксирование запросов, если честно.

Чтобы клиент сделал обращение к API, ему нужен ключ. Этот ключ сейчас берется из кук браузера, клиент сам его туда помещает, мой сервер отсутствует вообще. Разве это не "вы делегируете клиенту обращение к апиай чата джипити не имея доступа к клиентским ключам"?

Я думаю над идеей монетизировать через патреон: у юзера есть выбор - либо ввести свой ключ, либо подписаться на мой патреон. В первом случае все происходит так же, как и сейчас. Во втором случае запрос отправляется на мой сервер, и я там вызываю API со своим ключом. Проблема в том, что я ограничен $120-ми на все запросы к API в месяц. Этоу квоту можно увеличить по запросу, но я не уверен, что это сработает.

Чтобы иметь возможность реализовывать вашу бизнес-логику на бекенде и ваш пользователь не открывал вам ключ, вы можете сделать так, чтобы запросы к апиай чата-джипити отправлял программный клиент (фронтенд), например браузер. Бекенд может "просить" фронтенд выполнить тот или иной запрос. Это можно сделать с помощью подхода Inversion Of Control - бекенд отправляет сообщение фронтенду с тем или иным заданием, фронтенд выполняет задание и отсылает ответ обратно бекедну. Запрограммированить это можно с помощью SSE + REST или WebSocket. Монетизацию можно делегировать какому-нибудь стороннему облаччному сервису - можно погуглить на эту тему или спросить у чатаджипити, как лучше поступить или синтегрировать вашу программу, например с пейпалом или страйп или другим пеймент провадером и продавать ваш продукт по подписке.

Вот тут и возникает самая большая проблема - прикрутить биллинг.

Во-первых, я в этом не разбираюсь. Я никогда ничего не интегрировал с платежными системами.

Во-вторых, там наверняка много юридических тонкостей.

Патреон выглядит как очень простой вид биллинга, но даже с ним нужно заморачиваться.

"я ограничен $120-ми на все запросы к API в месяц" - https://github.com/abetlen/llama-cpp-python Вот (возможно) можно попробовать для демо версии или для прода, если качество приемлемое.

Увы, открытые модели пока слабоваты, серьезные NLP-задачи на них пока решать стремно. На данный момент они хорошо работают только в режиме диалога.

Кроме того, хостить эти модели дороговато по ресурсам + инференс будет медленным.

Вот здесь можно попробовать некоторые: https://chat.lmsys.org/

Вы не поверите, сколько этих ключей на гитхабе хранится в открытом виде.

Более того, OpenAI автоматически деактивирует ключ, если его случайно закоммитить в публичный реп.
Однако, новый ключ создать не проблема.

Очень полезно! Вот было бы оно доступно, когда у меня был курс Business English. А то с моим корявфм английским, чтобы домашки на нормальном уровне сдавать, приходилось писать по-русски, и потом в deepl английский перевод обрабатывать :)

А откуда, если не секрет, вы брали варианты жпт4, если апи пока только по вайт листу? С теми же промтами в бинг/скайп вставляли?

Я записался в вейтлист сразу как только вышло GPT-4 API (в форме я подробно описал идеи, которые хочу реализовать, одной из них был вот этот проект).

Это сработало, через 2 дня мне дали доступ.

На Ли Вонг Яне чатГПТ-4, как ни тужилась трудиться тяжелым трудом, все же ни шмагла. Даже интересно стало, как бы чатГПТ перевела его исходный китайский речекряк.

Токенизация нужна только для подсветки отличий?

Скрипт больше не работает? Новые версии какие-то "кривые".

Все работает.
Я решил отказаться от идеи, что юзер вводит свой ключ и добавил авторизацию. Теперь все происходит с моего ключа. Чтобы не истратить все деньги, я добавил внутреннюю валюту, за которую идет использование сервиса. При регистрации дается небольшое количество этой валюты. Механизм пополнения я еще не реализовал.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории