1 #ifndef COMMITMESSAGEGENERATOR_H
2 #define COMMITMESSAGEGENERATOR_H
16 std::string
a =
"HEAD";
67 static std::string
make_diff(
const std::string &gitcommand,
const std::string &dir, CommitPair
const &commits);
76 fprintf(stderr,
"%s\n", prompt.c_str());
Definition: AiApiBridge.h:284
void set_ai_model(GenerativeAI::Model model)
使用するAIモデルを設定する。
Definition: AiApiBridge.cpp:670
void set_system_role(std::string const &role)
Definition: AiApiBridge.cpp:675
AiResult request(GenerativeAI::EndPoint::Type eptype, std::string const &prompt, const Query2Request &req)
指定されたエンドポイントタイプに対してプロンプトを送信し、AIの応答を取得する。
Definition: AiApiBridge.cpp:772
Definition: CommitMessageGenerator.h:39
std::vector< std::string > messages
Definition: CommitMessageGenerator.h:44
bool error
Definition: CommitMessageGenerator.h:41
std::string error_status
Definition: CommitMessageGenerator.h:42
std::string error_message
Definition: CommitMessageGenerator.h:43
Result(std::vector< std::string > const &messages)
Definition: CommitMessageGenerator.h:46
Definition: CommitMessageGenerator.h:9
static bool accept_file_diff(const std::string &filename, const std::string &mimetype)
ファイルのdiffをAIに送るべきか判定する。
Definition: CommitMessageGenerator.cpp:128
CommitMessageGenerator(GenerativeAI::Model const &model, CommitMessageGenerator::Request const &request)
Definition: CommitMessageGenerator.h:53
AiResult request()
Definition: CommitMessageGenerator.h:72
constexpr static int max_diff_size
Definition: CommitMessageGenerator.h:13
void set_ai_model(GenerativeAI::Model model)
Definition: CommitMessageGenerator.h:59
CommitMessageGenerator::Request request_
Definition: CommitMessageGenerator.h:52
AiApiBridge api_
Definition: CommitMessageGenerator.h:11
static std::string make_diff(const std::string &gitcommand, const std::string &dir, CommitPair const &commits)
コミット差分を取得する。
Definition: CommitMessageGenerator.cpp:169
std::string generatePrompt() const
diffからAIへ送るプロンプト文字列を生成する。
Definition: CommitMessageGenerator.cpp:76
static Result parse_response(GenerativeAI::Model model, const AiResult &result)
AIレスポンスのJSON文字列を解析してコミットメッセージ候補を取り出す。
Definition: CommitMessageGenerator.cpp:29
Definition: GitRunner.h:13
std::string filename(std::string const &path)
Definition: misc.cpp:149
AIレスポンスの解析結果を保持する内部構造体
Definition: AiApiBridge.h:234
Definition: CommitMessageGenerator.h:15
CommitPair(std::string const &a, std::string const &b)
Definition: CommitMessageGenerator.h:19
std::string b
Definition: CommitMessageGenerator.h:17
std::string a
Definition: CommitMessageGenerator.h:16
Definition: CommitMessageGenerator.h:26
int max_message_count
Definition: CommitMessageGenerator.h:30
Request(std::string const &diff, std::string const &status_s_u, const std::string &hint)
Definition: CommitMessageGenerator.h:31
std::string diff
Definition: CommitMessageGenerator.h:27
std::string status_s_u
Definition: CommitMessageGenerator.h:28
std::string hint
Definition: CommitMessageGenerator.h:29
Definition: GenerativeAI.h:95