Added code samples for AI-Agents

This commit is contained in:
2025-12-17 20:22:46 +03:00
parent d66aed35d6
commit 0885618b25
29 changed files with 2007 additions and 0 deletions

View File

@@ -0,0 +1,73 @@
"""Скрипт для миграции промптов."""
import argparse
import json
from pathlib import Path
from prompts.chat_prompts import CHAT_SYSTEM_PROMPT
from prompts.persona import EARTH_PERSONA
from prompts.schedule_prompts import SCHEDULE_GENERATION_PROMPT, SCHEDULE_UPDATE_PROMPT
def export_prompts(output_file: str):
"""Экспортировать все промпты в JSON."""
prompts = {
"persona": {
"name": "Earth Persona",
"content": EARTH_PERSONA,
},
"schedule_generation": {
"name": "Schedule Generation Prompt",
"content": SCHEDULE_GENERATION_PROMPT,
},
"schedule_update": {
"name": "Schedule Update Prompt",
"content": SCHEDULE_UPDATE_PROMPT,
},
"chat_system": {
"name": "Chat System Prompt",
"content": CHAT_SYSTEM_PROMPT,
},
}
with open(output_file, "w", encoding="utf-8") as f:
json.dump(prompts, f, ensure_ascii=False, indent=2)
print(f"Промпты экспортированы в {output_file}")
def import_prompts(input_file: str):
"""Импортировать промпты из JSON (для будущего использования)."""
with open(input_file, "r", encoding="utf-8") as f:
prompts = json.load(f)
print(f"Импортировано {len(prompts)} промптов:")
for key, value in prompts.items():
print(f" - {value['name']}: {len(value['content'])} символов")
def main():
"""Главная функция."""
parser = argparse.ArgumentParser(description="Миграция промптов")
parser.add_argument(
"action",
choices=["export", "import"],
help="Действие: export или import",
)
parser.add_argument(
"--file",
type=str,
default="prompts.json",
help="Файл для экспорта/импорта",
)
args = parser.parse_args()
if args.action == "export":
export_prompts(args.file)
elif args.action == "import":
import_prompts(args.file)
if __name__ == "__main__":
main()