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