신속한 엔지니어링 분야에서 여러 버전의 프롬프트를 관리하는 것이 압도적 일 수 있습니다. 개인과 팀은 종종 다양한 유형의 프롬프트를 추적하고 조직하는 데 어려움을 겪고 있으며, 가장 좋은 것 중 일부를 놓칠 수 있습니다.
실험적인 오픈 소스는 프롬프트 엔지니어 및 개발자의 삶을 쉽게 만들려고합니다. 조직화되지 않은 프롬프트 관리 방법은 작업을 강하게 만들기 때문에 엔지니어와 개발자가 팀과 쉽게 프롬프트를 쉽게 추적, 공유 및 처리 할 수 있도록 구조화 된 접근 방식을 제공합니다. 프롬프트 주최자 .
작업 기반 조직 : 사용자는 다양한 작업 (요약, 주제 검색, 의도 식별 등)에서 프롬프트를 구성하여 각 프롬프트에 대한 명확하고 분류 된보기를 제공 할 수 있습니다.
프롬프트 버전 관리 : 각 작업 내에서 사용자는 각각 고유 한 매개 변수 세트로 여러 버전의 프롬프트를 작성하고 관리 할 수 있습니다.
차이 시각화 : 사용자는 통합 된 'Show Diff'기능을 활용하여 다양한 프롬프트 버전 간의 차이, 추가 또는 삭제를 쉽게 찾을 수 있습니다.
프롬프트 매개 변수 구성 : 사용자는 각 버전의 프롬프트에 대한 온도, TOP_P, MAX 토큰 및 임계 값과 같은 다양한 매개 변수를 쉽게 구성 할 수 있습니다.
상태 추적 : 앱을 통해 사용자는 각 프롬프트의 상태를 설정하고 추적하여 프롬프트 평가 및 최적화를 지원할 수 있습니다.
주석 기능 : 각 프롬프트 버전에는 관련 댓글 상자가있어 사용자가 프롬프트와 관련된 중요한 메모 또는 정보에 주석을 달 수 있습니다.
시스템 프롬프트 관리 : 사용자 프롬프트와 함께 앱은 각각 주석 기능을 갖춘 시스템 프롬프트 관리를 가능하게합니다.
저장 및 다운로드 : 사용자는 진행 상황을 저장하고 yaml 형식으로 구성된 프롬프트를 다운로드하여 쉽게 공유하고 스토리지 할 수 있습니다.
개발자 파이프 라인을위한 YAML 통합 :이 응용 프로그램은 YAML 파일을 개발 파이프 라인에 직접 통합하여 개발 프로세스를보다 직관적이고 오류가 적게 만들어서 개발자를 원활하게 촉진합니다.
단일 사용자 앱 :이 응용 프로그램은 현재 개별 사용을 위해 설계되었으며, 여러 사용자를 지원하기위한 향후 업그레이드 계획이 있습니다.
"프롬프트 주최자"폴더로 이동하여 실행하십시오.
python app.py
나는 Python 3.8을 사용했습니다
프롬프트 조직자 에서 Yaml 파일을 다운로드 하고이 방법을 사용하여로드하십시오.
import yaml
def read_template():
directory_path = "data.yaml"
yaml_content = ''
with open(directory_path, "r") as f:
try:
yaml_content = yaml.safe_load(f)
except yaml.YAMLError as e:
print(f"Error parsing {directory_path}: {e}")
return yaml_content
def get_prompt(task, version):
yaml_content = read_template()
version = "version"+"_"+str(version)
return yaml_content[task]['prompts']['version_1']["prompt"]
prompt = get_prompt("Intent",1)
def get_parameters(task, version):
yaml_content = read_template()
version = "version"+"_"+str(version)
temp = yaml_content[task]['prompts'][version]['temperature']
top_p = yaml_content[task]['prompts'][version]['top_p']
max_tokens = yaml_content[task]['prompts'][version]['max_tokens']
threshold = yaml_content[task]['prompts'][version]['threshold']
return {"temperature":temp, "top_p":top_p, "max_tokens":max_tokens, "threshold":threshold}
params = get_parameters('Intent',1)
신속한 자리 표시자를 사용하여 올바른 내용으로 교체하십시오.
예제 프롬프트 :
나는 당신에게 구절을주고 있으며, 당신은 토론 가치가 높은 가장 중요한 의도를 찾아야합니다. 모든 의도는 문자열 형식이어야하고 관련성 점수는 플로트 형식이어야합니다. n nyour 응답 사전 형식의 출력을 포함해야합니다. 모든 설명. n npassage : n n ## placeholder_1 ##
## placeholder_1 ##을 입력 통로로 동적으로 교체하십시오.
passage_content = "Your passage data"
prompt_passage = get_prompt('Intent',1)
prompt_passage = prompt_passage.replace("##placeholder_1##", passage_content)
Helper.py 파일을 사용하여 이러한 모든 방법을 사용하십시오.
openai.api_key = 'your-api-key-here'
passage_content = "Your data"
prompt_passage = get_prompt("Intent", 1) # This will provide you the prompt for the specified version and task.
system_prompt = get_sysprompt("Intent", 1) # This will provide you the system prompt for the specified version and task.
prompt_param = get_parameters("Intent", 1) # This will provide you the all parameters for the specified version and task.
prompt_passage = prompt_passage.replace("##placeholder_1##", passage_content)
response = openai.ChatCompletion.create(
model = "gpt-3.5-turbo",
temperature = prompt_param["temperature"],
top_p = prompt_param["top_p"],
max_tokens = prompt_param["max_tokens"],
messages=[
{"role": "system", "content": prompt_passage},
{"role": "user", "content": system_prompt},
]
)
# Extracting response
answer = response['choices'][0]['message']['content']
print(answer)
설명 된 단계를 준수함으로써 구조화되고 체계적인 접근 방식을 채택 할 수 있습니다. 프롬프트 주최자는 보증으로 프롬프트를 설계하고 세 심하게 검사하며 구현할 수 있도록합니다. 이로 인해 고급 및 신뢰할 수있는 AI 응용 프로그램이 개발됩니다.
지금은 Yaml 파일로 앞뒤로 진행되지 않도록 프로젝트 에서이 앱을 실행합니다. 모든 수정은 프로젝트 수준에 머물러 있습니다. 아이디어는 가까운 장래 에이 통합을 원활하게 만드는 것입니다.
그리고 더 ...
모두 사용하기 쉽습니다.
행복한 프롬프트, : 박수 : 프롬프트 주최자 ?