ai

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 9, 2025 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultModelName = "gemini-2.5-flash-preview-05-20"

默认模型名称

Variables

This section is empty.

Functions

func IsCustomPrompt added in v0.0.2

func IsCustomPrompt(promptType PromptType) bool

IsCustomPrompt 检查是否为自定义提示词(文件路径)

func LoadCustomPrompt added in v0.0.2

func LoadCustomPrompt(filePath string) (string, error)

LoadCustomPrompt 加载自定义提示词文件

Types

type GeminiClient

type GeminiClient struct {
	// contains filtered or unexported fields
}

GeminiClient 是Gemini AI API的客户端

func NewGeminiClient

func NewGeminiClient() (*GeminiClient, error)

NewGeminiClient 创建一个新的Gemini客户端

func NewGeminiClientWithModel

func NewGeminiClientWithModel(modelName string) (*GeminiClient, error)

NewGeminiClientWithModel 使用指定模型创建一个新的Gemini客户端

func (*GeminiClient) Close

func (g *GeminiClient) Close()

Close 关闭Gemini客户端

func (*GeminiClient) GenerateReport

func (g *GeminiClient) GenerateReport(commits []git.CommitInfo, fromDate, toDate time.Time) (string, error)

GenerateReport 根据提交记录和时间范围生成报告

func (*GeminiClient) GenerateReportWithPrompt

func (g *GeminiClient) GenerateReportWithPrompt(commits []git.CommitInfo, fromDate, toDate time.Time, promptType PromptType) (string, error)

GenerateReportWithPrompt 使用指定的提示词类型生成报告

func (*GeminiClient) SummarizeCommits

func (g *GeminiClient) SummarizeCommits(commits []git.CommitInfo) (string, error)

SummarizeCommits 使用AI总结提交记录

func (*GeminiClient) SummarizeCommitsWithPrompt

func (g *GeminiClient) SummarizeCommitsWithPrompt(commits []git.CommitInfo, promptType PromptType) (string, error)

SummarizeCommitsWithPrompt 使用指定的提示词类型总结提交记录

type PromptType

type PromptType string

PromptType 表示不同类型的提示词

const (
	// BasicPrompt 基础提示词:核心摘要
	BasicPrompt PromptType = "basic"
	// DetailedPrompt 中级提示词:详细且结构化的报告
	DetailedPrompt PromptType = "detailed"
	// TargetedPrompt 高级提示词:面向角色和受众的报告
	TargetedPrompt PromptType = "targeted"
)

func GetPromptTypeFromString

func GetPromptTypeFromString(promptTypeStr string) PromptType

GetPromptTypeFromString 根据字符串返回对应的提示词类型

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL