DAMJ - это инструмент для создания комплексных подсказок для языковых моделей путем объединения файлов проекта и применения пользовательских параметров обработки.
damj предназначен для того, чтобы помочь разработчикам создать эффективные подсказки для крупных языковых моделей (LLMS), таких как CHATGPT. Объединяя различные файлы проекта и применяя настраиваемые параметры обработки, damj упрощает процесс генерации подсказок, адаптированных к конкретным контекстам проекта.
Вы можете установить последний выпуск от PYPI:
pip install damjgit clone https://github.com/baselhusam/damj.git
cd damj
pip install . import os
from damj import Damj
cwd = os . getcwd ()
damj = Damj ( cwd )
damj . project_info (
project_overview = "This is a sample project." ,
add_project_structure = True ,
)
prompt = damj . create_prompt (
question = "What is the purpose of this project?" ,
)
print ( prompt )Выход:
# Project Overview
This is a sample project.
# Project Structure
| ├── LICENSE
| ├── README.md
| ├── pyproject.toml
| ├── requirements.txt
├── assets/
| ├── background.png
| ├── logo.png
├── damj/
| ├── __init__.py
| ├── damj.py
| ├── utils.py
# Question
What is the purpose of this project?
import os
from damj import Damj
cwd = os . getcwd ()
damj = Damj (
cwd = cwd ,
whitelist_files = [ "*.py" ],
blacklist_files = [ ".venv" , "__pycache__" ],
snippet_marker = "```"
)
damj . project_info (
project_overview = "This is a sample project." ,
add_project_structure = True ,
add_files_content = True ,
py_options = {
"add_imports" : True ,
"add_comments" : True ,
"add_docstrings" : False ,
"ipynb_output" : False
}
)
prompt = damj . create_prompt (
question = "What is the purpose of this project?" ,
copy_to_clipboard = True ,
to_markdown = False
)
print ( prompt )DAMJ также предоставляет несколько коммунальных функций, которые можно использовать независимо. Эти утилиты включают функции, чтобы получить структуру проекта, получить содержимое файла и многое другое.
Функция get_project_structure генерирует представление маркировки структуры каталога, за исключением файлов и каталогов с черным списком.
from damj . utils import get_project_structure
# Get the project structure excluding .venv and __pycache__ directories
cwd = os . getcwd ()
blacklist = [ ".venv" , "__pycache__" ]
project_structure = get_project_structure ( cwd , blacklist )
print ( project_structure ) Функция get_file_content получает содержимое файла, применяя указанный py_options .
from damj . utils import get_file_content
py_options = {
"add_comments" : True ,
"add_imports" : True ,
"add_docstrings" : False ,
"ipynb_output" : False
}
# Get the content of a Python file with the specified options
file_content = get_file_content ( "example.py" , py_options )
print ( file_content )Этот проект лицензирован по лицензии на программное обеспечение Apache. Смотрите файл лицензии для получения подробной информации.
Базель Мазер ([email protected])
Взносы приветствуются! Пожалуйста, распадайте репозиторий и откройте запрос на притяжение с вашими изменениями.