cuốn sách gpt4 ai đã làm

Java 语音 API 空响应

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 06:22:51 28 4
mua khóa gpt4 Nike

Tôi đang sử dụng API nhận dạng giọng nói Java - Jarvis, có trụ sở tại https://github.com/lkuza2/java-speech-api

Tuy nhiên, khi chạy ứng dụng, tôi gặp lỗi: Máy chủ trả về mã phản hồi HTTP: 400 cho URL:https://www.google.com/speech-api/v1/recognize?xjerr=1&client=chromium&lang=en-US&maxresults=1 (Đây là URL mà api này sử dụng để nhận phản hồi của Google)

Tôi cũng đã tạo khóa API như đã đề cập trong bài đăng trước và thử sử dụng URL (đây là API phiên bản 2): www.google.com/speech-api/v2/recognize?output=json&lang=en-US&key =MYKey". Nhưng trong trường hợp này, tôi nhận được phản hồi không có giá trị từ Google.

Ai đó có thể cho tôi biết làm thế nào để giải quyết vấn đề này?

câu trả lời hay nhất

Tôi đã thay đổi một số thứ từ lớp Công nhận:

Tôi đã thay đổi hằng số GOOGLE_RECOGNIZER_URL thành:

    Chuỗi cuối cùng tĩnh riêng tư GOOGLE_RECOGNIZER_URL = "https://www.google.com/speech-api/v2/recognize?output=json&lang=en-us&key=YOUR_KEY";

Sau đó tôi đã thay đổi phương pháp này vì dữ liệu phản hồi có 2 hàng

   Chuỗi riêng rawRequest(Tệp inputFile, int maxResults, int sampleRate) ném IOException

Dòng đầu tiên (dòng đã đọc và gửi) trống (tôi thực sự không biết tại sao), dòng thứ hai có phản hồi bằng giọng nói được nhận dạng. Để làm điều này, bạn phải đọc dòng thứ hai (không biết có cách nào tốt hơn không):

    Phản hồi chuỗi = br.readLine();
phản hồi = br.readLine();
br.close();
trả lời phản hồi;

Sau đó, tôi đã thay đổi phương pháp này, tôi nghĩ rằng nó đang sử dụng phản hồi URL v1 hoặc thứ gì đó, bởi vì phương pháp này tìm kiếm các cách nói trong phản hồi json, nhưng không có khóa cách nói.

    khoảng trống riêng tư phân tích cú pháp(Chuỗi rawResponse, GoogleResponse googleResponse)
nếu (rawResponse == null)
return;

JSONObject jsonObject = JSONObject mới (rawResponse);
JSONArray jsonArray= (JSONArray) jsonObject.get("kết quả");
JSONArray jsonArrayResult = (JSONArray) jsonArray.getJSONObject(0).get("alternative");
googleResponse.setResponse(jsonArrayResult.getJSONObject(0).get("transcript").toString());
googleResponse.setConfidence(jsonArrayResult.getJSONObject(0).get("sự tự tin").toString());

Tôi mới làm quen với thư viện json nên đây có thể là một phương pháp tốt hơn và ngắn gọn hơn, nhưng cách này hiệu quả với tôi!

Về phản hồi trống của API Java Speech, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/27206749/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress