찾다
기술 주변기기일체 포함프롬프트 압축 : 파이썬 예제가있는 안내서

빠르게 진화하는 인공 지능 환경에서 LLM (Lange Language Models) 최적화는 가능한 것의 경계를 넓히는 것이 아니라 효율성과 비용 효율성을 보장하는 것입니다.

프롬프트 압축

는 계산 비용을 최소화하면서 이러한 모델의 성능을 향상시키는 데 중요한 기술로 등장했습니다. 거의 매주 새로운 연구가 떠오르면서 유지하는 것은 어렵지만 기본 사항을 이해하는 것은 필수적입니다. 이 기사는 신속 압축의 기본 사항을 다루고, 사용해야 할시기에 대해 설명하고 RAG 파이프 라인의 비용을 줄이는 데 중요성이 있으며 OpenAI의 API를 통해 GPT-3.5-Turbo-0125 모델을 사용하여 예제를 제공합니다. 자세한 내용을 배우려면 Prompt Engineering 에서이 과정을 확인하십시오. 프롬프트 압축이란 무엇입니까? 프롬프트 압축은 출력의 품질과 관련성을 크게 변경하지 않고 LLM에 주어진 입력을 최적화하기 위해 자연 언어 처리 (NLP)에 사용되는 기술입니다. 이 최적화는 쿼리의 토큰 수가 LLM 성능에 미치는 영향으로 인해 중요합니다. 토큰은 언어 모델의 토큰 화기에 따라 단어 또는 하위 단어를 나타내는 텍스트 llms 사용의 기본 단위입니다. 프롬프트에서 토큰 수를 줄이는 것이 유리하며 때로는 몇 가지 이유로 필요합니다.

토큰 제한 제약 조건 : llms는 입력에 대한 최대 토큰 제한을 갖습니다. 이 한계를 초과하면 중요한 정보를 자극하여 출력의 명확성과 모델의 효과를 줄일 수 있습니다. 처리 효율 및 비용 절감 :

토큰은 적은 수의 처리 시간과 비용이 낮아집니다. . 응답 관련성 향상 :

인간이 읽을 수있는 프롬프트가 항상 좋은 프롬프트를 의미하는 것은 아닙니다. 때로는 우리가 선하고 유익한 유익한 소식은 중지 단어 ( "a," "," "is"등)와 같은 LLM에 대한 중요하지 않은 정보를 가져옵니다.

프롬프트 압축은 중복 정보 제거, 핵심 포인트 요약 또는 특수 알고리즘을 활용하여 프롬프트의 본질을 증류하면서 토큰 수를 최소화함으로써 토큰 수를 줄입니다.

. 언제 프롬프트 압축을 사용해야합니까? 프롬프트 압축을 사용할 수있는 시나리오를 살펴 보겠습니다.

고급 프롬프트 엔지니어링 기술 사슬의 프롬프트와 같은 기술은 매우 효과적이지만 종종 수천 개의 토큰에 도달 할 수있는 긴 프롬프트가 발생합니다. 이것은 처리 시간과 비용을 증가시키고 특정 모델의 토큰 한도를 초과 할 수 있습니다. 프롬프트 압축은 프롬프트의 효과를 유지하면서 토큰 수를 줄임으로써 이러한 문제를 완화합니다.Rag Pipelines는 정보 검색과 텍스트 생성을 결합하며 종종 상황에 맞는 이해가 중요한 특수 챗봇 및 기타 응용 프로그램에서 사용됩니다. 이 파이프 라인은 종종 광범위한 대화 이력이나 검색된 문서가 프롬프트로서 필요하며, 토큰 수가 높고 비용이 증가합니다. 비용을 최소화하면서 필수 컨텍스트를 유지하는 데 필수적인 경우 프롬프트 압축이 필수적입니다. 프롬프트 압축의 적용 가능성 및 제한 프롬프트 압축은 보편적 인 솔루션이 아니며 신중하게 사용해야한다는 점에 유의해야합니다. 예를 들어, 대화 맥락을 위해 설계된 Chatgpt와 같은 보조 모델은 공격적인 프롬프트 압축의 혜택을받지 못할 수 있습니다. 이 모델은 종종 토큰 당 청구되지 않으며 대화 내용을 효과적으로 관리하기 위해 채팅 요약 및 메모리 기능을 통합하여 압축을 중복시킵니다. 토큰 당 요금을 청구하는 모델로 작업하더라도 과도한 압축은 뉘앙스 또는 중요한 세부 사항을 잃을 수 있다는 점에 유의해야합니다. 크기를 줄이고 프롬프트의 의미의 무결성을 유지하는 것 사이의 올바른 균형을 인상하는 것은 핵심입니다. 프롬프트 압축은 어떻게 작동합니까? 프롬프트 압축 기술은 지식 증류, 인코딩 및 필터링의 세 가지 주요 방법으로 분류 할 수 있습니다. 각 기술은 다양한 강점을 활용하여 LLM의 프롬프트의 길이와 효율을 최적화합니다. 우리는 이러한 각 기술에 대해 이야기 할 것이지만,이 백서에서보다 포괄적 인 접근법을 찾을 수 있습니다 : 대형 언어 모델에 대한 효율적인 프롬프트 방법 : 설문 조사. 이 기사를 통해이 논문을“설문 조사 논문”으로 언급 할 것입니다.

지식 증류

지식 증류는 기계 학습 분야의 기술로, Hinton et al. (2015), 더 작고 간단한 모델 (학생)이 더 크고 더 복잡한 모델 (교사)의 행동을 복제하도록 훈련 된 경우. 이 기술은 처음에 모델의 앙상블 훈련의 계산 문제를 해결하기 위해 처음 개발되었습니다. 프롬프트 엔지니어링의 맥락에서 지식 증류를 사용하여 모델 대신 프롬프트를 압축 할 수 있습니다. 이것은 소프트 프롬프트 튜닝을 통해 LLM 내에서 하드 프롬프트를 압축하는 방법을 배우음으로써 달성됩니다. 자세한 통찰력은 설문 조사 논문의 섹션 3.1 및 부록 A.1.1을 참조하십시오. 인코딩 인코딩 메소드는 입력 텍스트를 벡터로 변환하여 중요한 정보를 잃지 않고 신속한 길이를 줄입니다. 이 벡터는 프롬프트의 필수 의미를 캡처하여 LLM이 더 짧은 입력을 효율적으로 처리 할 수 ​​있도록합니다.흥미롭게도 LLM은 Base64와 같은 다른 언어에 능숙하며, 이는 인코딩에 사용하여 프롬프트의 토큰 크기를 줄입니다. 예를 들어, 프랑스어는 "프랑스어로 다음 텍스트를 번역하십시오 : 안녕하세요, 어떻게 지내세요?" Base64에서 인코딩 된 것은 "vhjhbnnsyxrlihrozsbmb2xsb3dpbmcgdgvcb0bybgcmvuy2g6icdizwxsbywgag93igfyzsb5b3unpw =="입니다. 당신은 당신이 좋아하는 LLM을 프롬프하여 그것을 테스트 할 수 있습니다!

놀랍게도, 일부 인코딩 기술은 모델 탈옥에도 사용되며, 여기에는 안전 메커니즘을 우회하기 위해 LLM을 조작하는 것이 포함됩니다. 인코딩 방법에 대한 자세한 내용은 조사 논문의 섹션 3.2 및 부록 A.1.2를 참조하십시오. 필터링 이전 두 가지 방법은 전체 프롬프트를 압축하려고 시도하지만 필터링 기술은 LLM의 효율을 향상시키기 위해 불필요한 부품을 제거하는 데 중점을 둡니다. 필터링 기술은 프롬프트의 다른 부분의 정보 내용을 평가하고 중복 정보를 제거합니다. 프롬프트의 모든 정보가 LLM에 유리하지는 않습니다. 이것은 문장, 문구 또는 토큰과 같은 다양한 수준에서 수행 할 수 있습니다. 목표는 프롬프트에서 가장 관련성이 높은 부분 만 유지하는 것입니다. Li et al. (2023), 연구원들은 자기 정보 지표를 사용하여 중복 정보를 필터링합니다. 논문 LLMLINGUA : 대형 언어 모델의 가속화 된 추론에 대한 프롬프트 압축 프레젠테이션, Microsoft Refine 프롬프트의 주요 구성 요소로의 연구자들은 각 부품의 압축 비율을 동적으로 조정합니다. 추가로 읽으려면 3.3 항 및 부록 A.1.3을 참조하십시오. Python에서 프롬프트 압축을 구현하는 방법 이 섹션에서는 인기 있고 최첨단으로 간주되는 선택적 컨텍스트 알고리즘을 구현하고 테스트합니다. 알고리즘 만 테스트하려면 아무 것도 설치할 필요가 없습니다. 이미 Huggingface 플랫폼에서 호스팅되어 있습니다. Keep It Simple (KIS), SCLR 및 Llmlingua 제품군의 알고리즘과 같은 다른 주류 압축 기술도 있습니다. 그러나이 짧은 기사에서는이를 다룰 수 없습니다.

.

앱 링크

선택적 컨텍스트 웹 앱에서 압축하려는 프롬프트 (영어 또는 단순화 된 중국어)의 언어를 선택할 수 있습니다. 압축 비율을 설정하고 문장, 토큰 또는 단계를 필터링할지 여부를 선택할 수도 있습니다. OpenAi API 로 선택적 컨텍스트 구현 및 테스트 이제 Python 구현 작업을 수행합시다. 또한 GPT-3.5-Turbo-0125 모델로 압축 된 프롬프트 몇 가지를 테스트 할 것입니다. 먼저 필요한 모든 모듈을 설치해야합니다. PIP를 사용하여 선택적 컨텍스트 라이브러리를 설치해야합니다 우리는 또한 spacy에서 en_core_web_sm 모델을 다운로드해야합니다. 다음 명령으로 수행 할 수 있습니다.
pip install selective-context
이제 selectiveContext 객체를 초기화해야합니다. 모델의 경우 Curie 또는 GPT-2를 선택하고 언어의 경우 EN 또는 ZH를 선택할 수 있습니다. 이 예제에는 gpt-2를 사용할 것입니다.

다음, 압축하려는 텍스트 문자열에서 selectiveContext 객체를 호출 할 수 있습니다. Reduce_ratio 및 Reduce_Level 매개 변수를 설정할 수 있습니다. Reduce_Level은 다음 중 하나 여야합니다.‘Send’,‘Phrase’또는‘Token’이어야합니다. 객체 호출은 a (context, rets_content) 튜플을 반환합니다. 여기서 컨텍스트는 압축 프롬프트이고 rowed_content는 제거 된 문구, 문장 또는 토큰의 목록입니다.
python -m spacy download en_core_web_sm
이제 몇 가지 예를 들어 봅시다. GPT-3.5-Turbo-0125 모델 에이 기사의“신속한 압축을 언제 사용해야합니까?”섹션을 요약하도록 요청합니다. 그런 다음 세 가지 감소 레벨, 즉 문장, 문구 및 토큰을 사용하여 0.5 압축 속도로 섹션을 압축합니다. 우리는 모델에 압축 버전을 다시 요약하고 각 프롬프트의 토큰 수와 모델의 출력을 비교하도록 요청합니다. 원래 단락 및 요약 아래에서 내가 사용할 API 호출을 볼 수 있습니다. 형식 문자열의 텍스트 변수를 변경합니다. 먼저, 우리는 모델에 원래의 원래의 비 압축 단락을 요약하도록 요청합니다. 완료를 확인하여 원래 프롬프트의 길이가 304 인 것을 알 수 있으며 다음은 출력이 있습니다.
sc = SelectiveContext(model_type = ‘gpt-2’, lang = ‘en’)
보시다시피, 모델은 압축되지 않은 단락을 아주 잘 요약했습니다.

토큰 수준 감소 이제 토큰 감소 버전을 시도해 봅시다. 압축 단락은 다음과 같습니다

프롬프트의 길이는 162 개의 토큰이며 다음은 모델 요약이 있습니다.

단락은 올바르게 요약되어 있지 않습니다. 공격적인 압축으로부터 혜택을받지 않는 chatgpt에 대한 뉘앙스는 사라졌습니다.

문장 수준 축소 다음, 문장 수준 축소를 시도해 봅시다. 감소 된 프롬프트는 길이가 129입니다

여기 모델 요약은 다음과 같습니다

이 요약에는 실수가 포함되어 있지 않지만 헝겊 토론이 누락되었습니다.
context, reduced_content = sc(text, reduce_ratio = 0.5, reduce_level = ‘sent’)
문구 수준 감소 마지막으로, 문구 수준 감소를 테스트합시다. 프롬프트는 183 개의 토큰 길이입니다

여기 모델의 요약은 다음과 같습니다

요약은 대부분 정확하고 일관성이 있습니다. 그러나 공격적인 프롬프트 압축의 혜택을받는 Chatgpt에 대한 부분을 잘못 이해합니다. 프롬프트 압축 평가 다른 압축 수준에서 토큰 수와 모델 요약 내용을 비교하면 모델의 출력에 대한 프롬프트 압축의 영향을 볼 수 있습니다.
from openai import OpenAI
client = OpenAI(api_key = key)
completion = client.chat.completions.create(
	model = “gpt-3.5-turbo-0125”,
	messages = [
{“role”: “user”, “content”: f”Summarize the following paragraph:\n {text}”}
]
)

[Prompt compression is useful in scenarios such as advanced prompt engineering techniques and retrieval-augmented generation pipelines to reduce token counts and costs while preserving effectiveness and context. However, it is not a universal solution and should be used judiciously, as excessive compression can lead to a loss of important details. It is important to strike a balance between reducing size and maintaining the prompt's meaning.]
압축 레벨

토큰 수 (원본은 304 길이)
[When Should Prompt CompProm compression particularly following Advanced prompt engineering Techniques like chainofthought prompting while highly lengthy prompts reach thousands tokensThis increases processing costs and may exceed token limits of certain modelsProm compression mit these token count while prompt effectivenessRetri-au generationRAG pipelines R combine information retrieval text specialized chat contextual understandingThese pipelines frequently involve providing extensive conversation histories retrieved as prompts leading high token counts increased expensesProm compression essential such essential context while costsApplic prompt compression It prompt universal judFor instance assistant models like ChatGPT designed convers contexts benefit aggressive prompt compressionThese models often do charge per token integrated chat summar memory features conversation history effectively compression redundantIt even working models charge per token excessive compression could nuance importantSt reducing size maintaining prompt’s meaning is]

정확도

토큰 레벨

162

chatgpt에 대한 중요한 뉘앙스를 잃어 버렸고 공격적인 압축으로부터 혜택을받지 않고 실수를 저질렀습니다.

문장-수준

129

는 실수를하지 않았지만 헝겊 파이프 라인에 대한 컨텍스트를 놓쳤다.

문구 수준

183
토큰 수준과 마찬가지로 Chatgpt가 공격적인 압축의 혜택을 누리게되었다고 잘못 언급했습니다.

전체적으로, 신속한 압축은 주요 아이디어를 보존하면서 토큰 수를 크게 줄일 수 있습니다. 그러나 중요한 뉘앙스와 맥락을 잃지 않도록 균형을 잡는 것이 필수적입니다.

이 연습은 특정 응용 프로그램을 기반으로 압축 수준을 신중하게 선택해야하며 프롬프트에서 특정 세부 사항을 유지하는 중요성을 신중하게 선택해야합니다. 우리는 0.5 압축 속도로 모든 실험을 수행했다는 점에 주목할 가치가 있습니다. 프롬프트 크기 감소와 무결성 유지 사이의 최적의 균형을 찾기 위해 다양한 사용 사례에 대한 다양한 압축 속도를 실험 할 수 있습니다.

결론 프롬프트 압축은 LLM의 효율성과 비용 효율성을 최적화하는 강력한 기술입니다. 우리는 그 중요성, 다양한 기술 및 구현 세부 사항을 논의하고 기초를 탐구했습니다. 생성 AI 분야가 계속 발전함에 따라 최신 개발을 유지하는 것이 중요합니다. 신속한 압축 및 관련 기술에 대한 기술과 이해를 더욱 향상시키기 위해이 기사에서 언급 된 논문과 다음의 포괄적 인 블로그 게시물 및 DataCamp의 코스를 탐색하는 것이 좋습니다.

프롬프트 엔지니어링 이해

프롬프트 튜닝 이해

chatgpt 개발자를위한 프롬프트 엔지니어링

프롬프트 압축 FAQS

프롬프트 압축이란 무엇인가, 중요한 이유는 무엇입니까?

    프롬프트 압축은 유산의 품질과 관련성을 유지하면서 길이를 줄임으로써 대형 언어 모델 (LLMS)에 주어진 입력을 최적화하는 데 사용되는 기술입니다. 신속한 압축을 구현할 때 일반적인 과제는 무엇입니까?
일반적인 과제에는 압축과 보존의 균형을 유지하고 다양한 유형의 입력 데이터를 보장하는 것이 포함됩니다. 또한 기계 학습 기반 및 하이브리드 접근 방식을 구현하는 것은 리소스 집약적이고 복잡 할 수 있습니다. 챗봇의 다중 회전 대화를위한 프롬프트 압축을 어떻게 처리합니까? 다중 회전 대화의 경우 신속한 압축은 이전 상호 작용의 컨텍스트가 보존되도록해야합니다. 선택적 컨텍스트 필터링과 같은 기술은 대화의 중요한 부분을 유지하면서 덜 중요한 정보를 압축하여 도움이 될 수 있습니다. 이 접근법은 챗봇의 응답에서 연속성과 관련성을 유지하는 데 도움이됩니다.

프롬프트 압축 기술을 향상시키기 위해 어떤 리소스를 사용할 수 있습니까?

기술을 더욱 향상시키고 기사에 언급 된 참조 된 연구 논문, 블로그 게시물 및 데이터 캠프 과정을 탐구합니다. 주제에는 프롬프트 엔지니어링 이해, 프롬프트 튜닝 및 검색 방지 생성 (RAG)이 포함되며,이 모든 것은 프롬프트 압축을 마스터하는 데 중요합니다. 또한, 당신이 배운 기술을 연습하십시오.

프롬프트 압축을 사용할 때 윤리적 고려 사항이 있습니까?

예, 윤리적 고려 사항에는 압축이 우연히 편견을 불러 일으키거나 유해한 유해한 정보를 생략하지 않도록하는 것이 포함됩니다. 또한 신속한 압축 기술은 모델을 실수로 탈옥하여 예측할 수 없을 정도로 행동하거나 부적절한 컨텐츠를 생성 할 수 있습니다. 특히 의료, 금융 또는 법률 자문과 같은 민감한 응용 분야에서 모델의 성능 및 출력에 대한 신속한 압축 효과를 모니터링하는 것이 중요합니다.

위 내용은 프롬프트 압축 : 파이썬 예제가있는 안내서의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
에이전트 걸레를 사용하여 지능형 FAQ 챗봇을 만드는 방법에이전트 걸레를 사용하여 지능형 FAQ 챗봇을 만드는 방법May 07, 2025 am 11:28 AM

AI 에이전트는 이제 크고 작은 기업의 일부입니다. 병원의 양식 작성 및 법률 문서 확인에서 비디오 장면 분석 및 고객 지원 처리에 이르기까지 모든 종류의 작업에 대한 AI 에이전트가 있습니다. 동료

공황에서 권력으로 : AI 시대에 리더가 배워야하는 어떤 지도자공황에서 권력으로 : AI 시대에 리더가 배워야하는 어떤 지도자May 07, 2025 am 11:26 AM

인생은 좋다. 예측 가능 - 당신의 분석적 마음이 그것을 선호하는 방식으로. 당신은 오늘 사무실에 들려 마지막 순간의 서류를 마무리했습니다. 그 후 바로 당신은 파트너와 아이들을 햇볕이 잘 드는 휴가를 보내고 있습니다.

AGI를 예측하는 증거 수렴이 AI 전문가들의 과학적 합의를 능가 할 것이라고 왜AGI를 예측하는 증거 수렴이 AI 전문가들의 과학적 합의를 능가 할 것이라고 왜May 07, 2025 am 11:24 AM

그러나 과학적 합의에는 딸꾹질과 gotchas가 있으며, 아마도 더 신중한 접근 방식은 양심으로도 알려진 증거의 수렴을 사용하는 것일 것입니다. 그것에 대해 이야기합시다. 혁신적인 AI 혁신에 대한이 분석은 나의

Studio Ghibli Dilemma - 생성 시대의 저작권 AIStudio Ghibli Dilemma - 생성 시대의 저작권 AIMay 07, 2025 am 11:19 AM

Openai 나 Studio Ghibli는이 이야기에 대한 의견 요청에 응답하지 않았습니다. 그러나 그들의 침묵은 창조적 인 경제에서 더 넓고 복잡한 긴장을 반영합니다. 생성 AI 시대에 저작권은 어떻게 기능해야합니까? 같은 도구와 함께

Mulesoft는 아연 도금 에이전트 AI 연결을위한 믹스를 공식화합니다Mulesoft는 아연 도금 에이전트 AI 연결을위한 믹스를 공식화합니다May 07, 2025 am 11:18 AM

콘크리트와 소프트웨어는 모두 필요한 경우 강력한 성능을 위해 아연 도금 될 수 있습니다. 둘 다 스트레스 테스트를 할 수 있으며, 둘 다 시간이 지남에 따라 균열과 균열로 고통받을 수 있으며, 둘 다 분해되어 두 기능의 생산 인 "새로운 빌드"로 재현 할 수 있습니다.

Openai는 Windsurf를 구매하기 위해 30 억 달러의 계약을 체결 한 것으로 알려졌다Openai는 Windsurf를 구매하기 위해 30 억 달러의 계약을 체결 한 것으로 알려졌다May 07, 2025 am 11:16 AM

그러나 많은보고는 매우 표면 수준에서 멈 춥니 다. Windsurf가 무엇인지 알아 내려고한다면 Google 검색 엔진 결과 상단에 표시되는 신디케이트 된 콘텐츠에서 원하는 것을 얻지 못할 수도 있습니다.

모든 미국 어린이를위한 필수 AI 교육? 250 명 이상의 CEO가 예라고 말합니다모든 미국 어린이를위한 필수 AI 교육? 250 명 이상의 CEO가 예라고 말합니다May 07, 2025 am 11:15 AM

주요 사실 공개 서한에 서명 한 리더에는 Adobe, Accenture, AMD, American Airlines, Blue Origin, Cognizant, Dell, Dropbox, IBM, LinkedIn, Lyft, Microsoft, Salesforce, Uber, Yahoo 및 Zoom과 같은 유명 회사의 CEO가 포함됩니다.

우리의 안주 위기 : AI 속임수 탐색우리의 안주 위기 : AI 속임수 탐색May 07, 2025 am 11:09 AM

이 시나리오는 더 이상 투기 소설이 아닙니다. 통제 된 실험에서 Apollo Research는 GPT-4가 불법적 인 내부자 거래 계획을 실행 한 다음 조사관에게 거짓말을하는 것을 보여주었습니다. 에피소드는 두 개의 곡선이 상승하고 있음을 생생하게 상기시켜줍니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.