Skip to content

Commit

Permalink
Merge branch 'release/5.0.2'
Browse files Browse the repository at this point in the history
  • Loading branch information
Sunwood-ai-labs committed Jun 10, 2024
2 parents a4492f9 + 00801d9 commit 64196aa
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 9 deletions.
3 changes: 2 additions & 1 deletion sourcesage/cli.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# sourcesage\cli.py
import argparse
from .core import SourceSage
from .modules.ReleaseDiffReportGenerator import GitDiffGenerator, MarkdownReportGenerator
Expand Down Expand Up @@ -76,7 +77,7 @@ def main():
# DocuMind用の引数を追加
#
parser.add_argument('--docuMind-model', type=str, default=None, help='DocuMindで使用するLLMのモデル名')
parser.add_argument('--docuMind-db', type=str, default=".SourceSageAssets/DocuMind.md", help='DocuMindのデータベースファイルのパス')
parser.add_argument('--docuMind-db', type=str, default=".SourceSageAssets/DOCUMIND/Repository_summary.md", help='DocuMindのデータベースファイルのパス')
parser.add_argument('--docuMind-release-report', type=str, default=".SourceSageAssets/RELEASE_REPORT/Report_{latest_tag}.md", help='リリースレポートのパス。{latest_tag}は最新のタグに置換されます。')
parser.add_argument('--docuMind-changelog', type=str, default=".SourceSageAssets/Changelog/CHANGELOG_release_{version}.md", help='変更履歴のパス。{version}はバージョンに置換されます。')
parser.add_argument('--docuMind-output', type=str, default=".SourceSageAssets/DOCUMIND/RELEASE_NOTES.md", help='リリースノートの出力パス')
Expand Down
27 changes: 19 additions & 8 deletions sourcesage/modules/DocuMind.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# sourcesage\modules\DocuMind.py
import os
from litellm import completion
from loguru import logger
Expand All @@ -6,6 +7,9 @@

class DocuMind:
def __init__(self, model_name, documen_db_path, release_report_path, changelog_path, repo_name, repo_version, prompt_output_path):

tprint("DocuMind")

self.model_name = model_name
self.documen_db_path = documen_db_path
self.release_report_path = release_report_path.format(latest_tag=repo_version)
Expand All @@ -17,7 +21,6 @@ def __init__(self, model_name, documen_db_path, release_report_path, changelog_p
self.release_report = self.load_release_report()
self.changelog = self.load_changelog()

tprint("DocuMind")

def load_documen_db(self):
"""DocuMindファイルを読み込む"""
Expand All @@ -26,13 +29,21 @@ def load_documen_db(self):

def load_release_report(self):
"""リリースレポートファイルを読み込む"""
with open(self.release_report_path, "r", encoding="utf-8") as file:
return file.read()
if os.path.exists(self.release_report_path):
with open(self.release_report_path, "r", encoding="utf-8") as file:
return file.read()
else:
logger.warning(f"リリースレポートファイル'{self.release_report_path}'が見つかりませんでした。スキップします。")
return ""

def load_changelog(self):
"""変更履歴ファイルを読み込む"""
with open(self.changelog_path, "r", encoding="utf-8") as file:
return file.read()
if os.path.exists(self.changelog_path):
with open(self.changelog_path, "r", encoding="utf-8") as file:
return file.read()
else:
logger.warning(f"変更履歴ファイル'{self.changelog_path}'が見つかりませんでした。スキップします。")
return ""

def generate_release_notes(self):
"""リリースノートを生成する"""
Expand All @@ -46,8 +57,8 @@ def generate_release_notes(self):
self.save_prompt(prompt)

if self.model_name is None:
logger.info("モデル名が指定されていないため、リリースノートの生成をスキップします。")
return None
logger.warning("モデル名が指定されていないため、リリースノートの生成をスキップします。")
return ""

logger.info(f"モデル'{self.model_name}'を使用してLLMにリリースノート生成を依頼しています...")
try:
Expand All @@ -59,7 +70,7 @@ def generate_release_notes(self):
return release_notes
except Exception as e:
logger.error(f"リリースノートの生成中にエラーが発生しました: {str(e)}")
return None
return ""

def save_prompt(self, prompt):
"""プロンプトを保存する"""
Expand Down

0 comments on commit 64196aa

Please sign in to comment.