O DAMJ é uma ferramenta para criar instruções abrangentes para modelos de idiomas, combinando arquivos de projeto e aplicando opções de processamento personalizadas.
damj foi projetado para ajudar os desenvolvedores a criar instruções eficazes para modelos de idiomas grandes (LLMs), como o ChatGPT. Ao combinar diferentes arquivos de projeto e aplicar opções de processamento personalizáveis, damj simplifica o processo de geração de instruções adaptadas a contextos específicos do projeto.
Você pode instalar o lançamento mais recente da 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 )Saída:
# 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 )O DAMJ também fornece várias funções de utilidade que podem ser usadas de forma independente. Esses utilitários incluem funções para obter a estrutura do projeto, obter conteúdo de arquivo e muito mais.
A função get_project_structure gera uma representação de marcação da estrutura do diretório, excluindo arquivos e diretórios na lista negra.
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 ) A função get_file_content recupera o conteúdo de um arquivo, aplicando as py_options especificadas.
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 )Este projeto está licenciado sob a licença do software Apache. Consulte o arquivo de licença para obter detalhes.
Basileia Mather ([email protected])
As contribuições são bem -vindas! Por favor, bire o repositório e abra uma solicitação de tração com suas alterações.