ChatGPT と Java を使用してインテリジェントな質問と回答のコミュニティを開発する方法
インテリジェントな質問と回答のコミュニティは、今日のインターネット ソーシャルでますます注目を集めています。ユーザーに質問して答えを得ることでニーズを満たす便利な方法を提供します。人工知能の継続的な開発により、ChatGPT と Java を使用してインテリジェントな質問と回答のコミュニティを開発することがますます簡単になってきています。この記事では、ChatGPT と Java を使用してシンプルでインテリジェントな質問と回答のコミュニティを構築する方法を紹介し、いくつかの具体的なコード例を示します。
ステップ 1: ChatGPT をセットアップする
まず、質問と回答の機能を提供するために ChatGPT モデルをセットアップする必要があります。 OpenAI によって提供される GPT モデル、または Hugging Face Transformers ライブラリに基づく事前トレーニングされたモデルを使用できます。次のサンプル コードは、Hugging Face Transformers ライブラリの使用例を示しています。
import org.apache.commons.lang3.StringUtils; import org.huggingface.models.GPTModel; import org.huggingface.tokenizers.GPTTokenizer; public class ChatGPT { private GPTModel model; private GPTTokenizer tokenizer; public ChatGPT(String modelPath, String tokenizerPath) { model = GPTModel.fromPretrained(modelPath); tokenizer = GPTTokenizer.fromPretrained(tokenizerPath); } public String generateAnswer(String question) { String input = "Q: " + question + " A:"; float[] scores = model.generateScore(input).getScores(); String output = tokenizer.decode(scores); return StringUtils.substringBetween(output, "A: ", " "); } }
このコードでは、Hugging Face Transformers ライブラリの GPT モデルと GPTTokenizer を使用します。ここで、modelPath
と tokenizerPath
は、事前トレーニングされたモデルとトークナイザーのパスです。 generateAnswer
メソッドは、質問を入力として受け取り、生成された回答を返します。
ステップ 2: Q&A コミュニティを構築する
Java では、さまざまな開発フレームワークを使用して Q&A コミュニティのバックエンドを構築できます。ここでは、開発フレームワークとして Spring Boot を使用し、フロントエンドとバックエンド間の対話を処理するために REST API を使用します。簡単なサンプル コードを次に示します。
import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; @SpringBootApplication @RestController public class QASystemApp { private ChatGPT chatGPT; public QASystemApp() { chatGPT = new ChatGPT("path/to/model", "path/to/tokenizer"); } @GetMapping("/answer") public String getAnswer(@RequestParam String question) { return chatGPT.generateAnswer(question); } public static void main(String[] args) { SpringApplication.run(QASystemApp.class, args); } }
このコードでは、QASystemApp
クラスは、@SpringBootApplication
アノテーションと ## を使用して Spring Boot アプリケーションとしてマークされています。 @RestController アノテーションにより、REST API コントローラーとしてマークされます。
getAnswer メソッドは、
question という名前のリクエスト パラメーターを受け取り、
chatGPT.generateAnswer メソッドを呼び出して回答を生成します。
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>智能问答社区</title> </head> <body> <h1>智能问答社区</h1> <form id="questionForm"> <label for="question">问题:</label> <input type="text" id="question" name="question" required> <button type="submit">提交</button> </form> <div id="answer"></div> <script> document.getElementById("questionForm").addEventListener("submit", function(event) { event.preventDefault(); var question = document.getElementById("question").value; fetch("/answer?question=" + encodeURIComponent(question)) .then(function(response) { return response.text(); }) .then(function(answer) { document.getElementById("answer").innerText = answer; document.getElementById("question").value = ""; }); }); </script> </body> </html>このコードは、フォーム入力ボックスと、回答を表示するための
要素を含む HTML ページを作成します。ユーザーが質問を送信すると、JavaScript コードを通じて質問の値を取得し、JavaScript の Fetch API を使用して GET リクエストを
/answerAPI に送信し、生成された回答を
以上がChatGPT と Java を使用してインテリジェントな質疑応答コミュニティを開発する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。