Skip to main content

Library for managing and caching Google Docs prompts with templating support.

Project description

PromptStorage 🚀

Назначение

Библиотека prompt-storage предназначена для ускорения разработки проектов путем распараллеливания процессов создания кода и работы промпт-инженеров.

Элегантное решение для управления промптами из Google Docs с кешированием и шаблонизацией

PromptStorage – это мощная и гибкая библиотека, которая превращает Google Docs в вашу персональную базу промптов для работы с языковыми моделями. Забудьте о хардкоде промптов в коде или о сложных системах управления контентом – используйте знакомый всем Google Docs для создания, редактирования и управления промптами в удобном интерфейсе!

🌟 Основные преимущества

  • Интеграция с Google Docs – храните промпты там, где их удобно редактировать
  • Интеллектуальное кеширование – мгновенный доступ к промптам даже без интернета
  • Гибкая шаблонизация – поддержка Jinja2 и Mako для динамического контента
  • Встроенная интеграция с FastAPI – создавайте API для промптов за минуты
  • Простота использования – получение и обработка промптов всего за несколько строк кода
  • Оптимизация производительности – кеширование минимизирует запросы к API

📦 Установка

pip install prompt-storage

🚀 Быстрый старт

from prompt_storage import PromptStorage
from prompt_storage.template_processor import TemplateProcessor

# Инициализация хранилища промптов
storage = PromptStorage(
    credentials_path="credentials.json",
    token_path="token.json",
    cache_dir="./cache"
)

# Получение промпта по ID документа
prompt = storage.get_prompt("your_google_doc_id")

# Обработка промпта как шаблона
template_processor = TemplateProcessor()
processed_prompt = template_processor.process_template(
    prompt, 
    {"variable": "value", "user_name": "Иван"},
    template_engine="jinja2"
)

print(processed_prompt)

💡 Ключевые возможности

Google Docs Processor

from prompt_storage import GoogleDocsProcessor

# Инициализация процессора Google Docs
processor = GoogleDocsProcessor(
    credentials_path="credentials.json",
    token_path="token.json"
)

# Загрузка документа
document = processor.get_document("your_google_doc_id")

# Извлечение текста
text = processor.extract_text(document)

Управление кешем

from prompt_storage import GoogleDocsCacheManager

# Инициализация менеджера кеша
cache_manager = GoogleDocsCacheManager(cache_dir="./cache")

# Сохранение в кеш
cache_manager.save_to_cache("doc_id", "document_content")

# Проверка наличия в кеше
is_cached = cache_manager.is_cached("doc_id")

# Получение из кеша
content = cache_manager.get_from_cache("doc_id")

Шаблонизация

from prompt_storage import TemplateProcessor

# Инициализация процессора шаблонов
template_processor = TemplateProcessor()

# Jinja2 шаблонизация
jinja_result = template_processor.process_template(
    "Привет, {{ user_name }}! Ваш баланс: {{ balance }}.",
    {"user_name": "Иван", "balance": "1000₽"},
    "jinja2"
)

# Mako шаблонизация
mako_result = template_processor.process_template(
    "Привет, ${user_name}! Ваш баланс: ${balance}.",
    {"user_name": "Иван", "balance": "1000₽"},
    "mako"
)

🔧 Настройка доступа к Google API

  1. Создайте проект в Google Cloud Console
  2. Включите Google Docs API для вашего проекта
  3. Создайте учетные данные OAuth2 и скачайте файл credentials.json
  4. При первом запуске библиотеки, будет запрошена авторизация через браузер

📊 Варианты использования

  • Управление промптами для LLM – централизованное хранение и версионирование промптов
  • Создание многоязычных интерфейсов – шаблоны с поддержкой переменных для локализации
  • Системы генерации контента – динамические промпты для создания разнообразного контента
  • Автоматизация рутинных задач – промпты для различных бизнес-процессов

📜 Лицензия

MIT


Упростите управление промптами уже сегодня! 🚀

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prompt_storage-0.1.7.post14.tar.gz (12.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prompt_storage-0.1.7.post14-py3-none-any.whl (13.8 kB view details)

Uploaded Python 3

File details

Details for the file prompt_storage-0.1.7.post14.tar.gz.

File metadata

  • Download URL: prompt_storage-0.1.7.post14.tar.gz
  • Upload date:
  • Size: 12.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for prompt_storage-0.1.7.post14.tar.gz
Algorithm Hash digest
SHA256 e7ed4b12157fef27ff86523f1d2b0b0f869ba815152288d6b8e50f6d9eabd80a
MD5 67b3fc0a257e55ddaa88470469bde838
BLAKE2b-256 bb573a780d2438c3fee9f25482e6438c0fb2890941176a1422caf1bee2c87ab0

See more details on using hashes here.

File details

Details for the file prompt_storage-0.1.7.post14-py3-none-any.whl.

File metadata

File hashes

Hashes for prompt_storage-0.1.7.post14-py3-none-any.whl
Algorithm Hash digest
SHA256 babb4deaf6a8a992cebeb342c16e3d4502f60fffde0d82369381fbb84431f6be
MD5 a20815d037c79187a5667850df4d935d
BLAKE2b-256 e272dd6a48cfa3c7514612651364e4064cafaf66b274917b600d44858aafc0af

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page