У нас СhatGPT відповідає на відгуки в Google Play Market
Мене звати Юлія, я Android розробник і автор декількох мобільних застосунків з рейтингом 4.9/5, 4K+ відгуками та 500K+ інсталами.
play.google.com/...ev?id=7572373447067384777
В мене виникла ідея написати програму, яка б відповідала на відгуки моїх користувачів замість мене. Раніше я відповідала на відгуки сама, але коли їх стало багато, я перестала це робити.
Чому відгуки мають отримувати відповідь від розробника?
- Користувачі люблять отримувати відповідь.
- Це збільшує шанси, що користувач перепише негативний відгук і він стане позитивним.
- Це генерує контент, який містить потрібні бізнесу ключові слова.
- Можу припустити, що додатки, які мають відповіді, ранжуються вище в рейтингу Маркету, так само як і додатки, які мають регулярні апдейти. Для Google це означає, що про додаток не забутий і удосконалюється. Google містить закритий алгоритм ранжування додатків, а значить нічого на 100% стверджувати не можна, проте припускаю, що це впливає позитивно.
⚠️ Google не хоче, щоб користувачі отримували автоматичні відповіді та попереджає про це в Документації. Наразі це працює як рекомендація, а не заборона.
Отримати доступ до API ChatGPT 3.5 може кожен за посиланням platform.openai.com/docs/introduction А до новішої версії API, ChatGPT 4.0, ті, хто хоча б раз сплатив за API GPT 3.5. Тобто має білінгову історію.
На цьому скріншоті видно, як стрімко зросла кількість оцінок після запуску програми.
У моєму випадку в 33% після відповіді на відгук, користувач накине зірочок. Рейтинг зросте. В 17% навпаки впаде. В 50% нічого не зміниться. Непоганий результат.
Приклад відповіді на не позитивний відгук.
Приклад відповіді на позитивний відгук. Програма завжди відповідає тією мовою, якою написано відгук.
Наступна Java функція запущена в хмарі GCP в Cloud Functions і викликається автоматично Cloud Scheduler кожні 3 год. Користувачі отримують відповідь швидко і при цьому я сплачую за Google сервіси менше 1 USD на місяць. Шаблон для відповіді на ★★★★★ відгуки та
public void respondToReviews() throws GeneralSecurityException, IOException, ServerException, URISyntaxException { HttpRequestInitializer requestInitializer = new HttpCredentialsAdapter(getServiceAccountCredentials()); AndroidPublisher service = new AndroidPublisher.Builder( GoogleNetHttpTransport.newTrustedTransport(), JSON_FACTORY, requestInitializer).setApplicationName("applicationName") .build(); final AndroidPublisher.Reviews reviews = service.reviews(); for (String packageName : packageNamesToProcess) { List<Review> reviewList = reviews.list(packageName).setMaxResults(50L).execute().getReviews(); if (reviewList != null) { for (Review review : reviewList) { boolean needRespond = true; List<Comment> comments = review.getComments(); for (Comment comment : comments) { if (comment.getDeveloperComment() != null) { needRespond = false; //already responded break; } } if (needRespond) { List<Comment> commentsList = review.getComments(); for (Comment comment : commentsList) { if (comment.getUserComment() != null) { UserComment userComment = comment.getUserComment(); final AndroidPublisher.Edits edits = service.edits(); AndroidPublisher.Edits.Insert editRequest = edits.insert(packageName, null /** no content */); AppEdit appEdit = editRequest.execute(); Listing listing = edits.listings().get(packageName, appEdit.getId(), Locale.US.toString()).execute(); String requestToChatGPT; if (userComment.getStarRating() < 5) { requestToChatGPT = "I received feedback from user \"" + review.getAuthorName() + "\" about my mobile application \"" + listing.getTitle() + "\" with score " + userComment.getStarRating() + " of 5 and text \"" + userComment.getText() + "\". Please give very short response on feedback in language " + userComment.getReviewerLanguage() + ". My goal is receiving 5 stars feedback."; } else { requestToChatGPT = "I received positive feedback from user \"" + review.getAuthorName() + "\" about my mobile application \"" + listing.getTitle() + "\" with score " + userComment.getStarRating() + " of 5 and text \"" + userComment.getText() + "\". Please give short response on feedback in language " + userComment.getReviewerLanguage() + ". Thank the user."; } String reviewResponse = chatGPTProcessor.httpGetResponse(requestToChatGPT); service.reviews().reply(packageName, review.getReviewId(), new ReviewsReplyRequest().setReplyText(reviewResponse)).execute(); break; } } } } } } }
Застереження:
1. Якщо клієнт просить пофіксити баг, жаліється, chatGPT не надасть якісну відповідь. Часто він може пообіцяти виправити щось в наступному апдейті, хоча ви це не плануєте.
2. Відгук це зворотний зв’язок від клієнта і він фактично ігнорується, що не дає авторам продукту реагувати на важливі проблеми. Для продуктів розважальної тематики, як у мене, це ок. Для сфери охорони здоров’я, банкінгу тощо — погана ідея.
4 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів