DeepSeek-R1 증류 LLAMA-70B를 사용하여 협상 에이전트를 구축하십시오
협상은 구인에서 비즈니스 거래에 이르기까지 모든 영향을 미치는 기술입니다. 급여 협상, 사업 거래 폐쇄 또는 계약에 대한 분쟁을 해결하든 적절한 기술은 성공과 희생의 차이가 될 수 있습니다. 협상 프로세스를 단순화하고 간소화하기 위해 Langchain 및 DeepSeek-R1에 구축 된 간소화 된 웹 애플리케이션 인 AI 기반 협상 에이전트를 개발했습니다. 입력 한 내용에 따라 지능적인 협상 전략을 제공하며 최상의 계약을 협상합니다.
학습 목표
- 다양한 영역에서 협상 전략을 향상시키는 데있어 AI의 역할을 이해하십시오.
- Deepseek R1 Distill Llama 70B가 실시간 AI 중심 협상 통찰력을 제공하는 방법을 알아보십시오.
- 반대자 및 위험 평가를 포함하여 AI 협상 에이전트의 주요 기능을 탐색하십시오.
- AI 기반 협상 도구를 Sleamlit에서 설정하고 사용하여 실습 경험을 얻습니다.
- AI 생성 전략이 급여 토론, 비즈니스 거래 및 계약 협상을 최적화 할 수있는 방법을 알아보십시오.
이 기사는의 일부로 출판되었습니다 데이터 과학 블로그.
DeepSeek R1 Distill Llama 70b 란 무엇입니까?
DeepSeek-R1-Distill-Llama-70B는 고성능 GroqCloud AI 모델입니다. LLAMA 3.3 70B의 증류 버전이며 수학, 코딩 및 사실 질문에 대응하기 위해 지능적이고 효율적으로 만들어졌습니다.
이 모델은 단계별로 순차적으로 이유가 있으므로 높은 수준의 의사 결정에 적합합니다. Groq의 매우 빠른 추론을 통해 사용자는 대기 시간없이 실시간 AI 추론을 경험하여 고급 AI 응용 프로그램의 새로운 가능성을 잠금 해제 할 수 있습니다.
문제 진술
사람들은 정보 부족, 정서적 편견 또는 약한 논증 구조로 인해 효과적으로 협상하기 위해 노력합니다.
- 직원은 협상 기술이 좋지 않아 급여가 낮아질 수 있습니다.
- 기업은 상대방의 요구를 이해하지 못하기 때문에 거래를 마감하지 못할 수 있습니다.
- 프리랜서와 신생 기업은 가격과 계약으로 어려움을 겪고 있습니다.
목표: 협상 시나리오를 분석하고, 반격자를 예측하며, 논리 및 과거 데이터를 기반으로 최적의 협상 전략을 제안하는 AI 에이전트를 만듭니다.
AI 협상 에이전트의 주요 특징
이제 아래 AI 협상 에이전트의 주요 기능을 살펴 보겠습니다.
- 여러 협상 유형 (급여, 비즈니스 거래, 프리 랜싱, 계약 분쟁)을 지원합니다.
- 정당화 및 위험 평가를 통해 AI 생성 반대자
- 개인화 된 협상 시나리오를위한 사용자 정의 가능한 입력 필드
- AI-Suggest 전략에 대한 신뢰 점수
- Groq API를 사용한 빠르고 효율적인 처리
이 에이전트의 작동 방식
사용자는 Streamlit 앱을 열고 원하는 협상 유형을 선택하여 시작합니다. 그런 다음 제안 세부 사항을 입력하여 AI 모델이 처리 할 주요 정보를 제공합니다. ‘AI 전략 생성’버튼을 클릭하면 시스템이 큰 언어 모델 (DeepSeek-R1)을 초기화하고로드합니다. 그런 다음 입력 데이터는 사전 정의 된 프롬프트 템플릿을 사용하여 처리되어 AI가 협상 컨텍스트를 효과적으로 이해하도록합니다.
처리가 완료되면 AI는 제공된 세부 사항에 따라 맞춤형 협상 전략을 생성합니다. 마지막으로,이 시스템은 AI의 제안 된 전략을 표시하여 사용자가 협상 프로세스를 지원하기위한 통찰력과 권장 사항을 제공합니다.

협상 유형을 선택하십시오
사전 정의 된 4 가지 옵션 중에서 선택하십시오.
- 급여 협상
- 비즈니스 거래
- 프리랜서 가격
- 계약 분쟁
제안 및 제약을 입력하십시오
채우기 :
- 제안 된 제안 (₹ 또는 %)
- 상대방의 예상 제안
- 최저 급여, 투자 한도 또는 마감일과 같은 주요 제약 조건
AI는 전략을 생성합니다
제출되면 AI는 협상을 분석하고 다음을 제공합니다.
- 입력을 기반으로 한 최고의 반격 제
- 제안에 대한 정당화
- 위험 평가 (수용 가능성)
- 신뢰 점수 (100%)
AI 통찰력을 사용하여 협상하십시오
AI 생성 전략을 활용하여 더 나은 거래를 자신있게 협상하고 확보하십시오.
베이스 설정
아래에서는 먼저 환경을 설정 한 다음 라이브러리를 설치하여베이스를 설정합니다.
환경 설정
# Create a Environment
python -m venv env
# Activate it on Windows
.\env\Scripts\activate
# Activate in MacOS/Linux
source env/bin/activate
요구 사항을 설치하십시오 .txt
pip install -r
API 키 설정
API 키를 보려면 Groq를 방문하십시오.

.env 파일에 API 키를 붙여 넣습니다
GROQ_API_KEY="Your API KEY PASTE HERE"
DeepSeek-R1 증류 LLAMA-70B를 사용하여 협상 에이전트를 구축하십시오
아래는 DeepSeek-R1 Distill LLAMA-70B 및 Streamlit을 사용하여 AI 협상 에이전트를 구축하여 스마트하고 데이터 중심의 협상 전략을 쉽게 생성 할 수 있습니다. 다이빙하자!
1 단계 : 필요한 라이브러리 가져 오기
UI 용 간소, AI 처리 용 Langchain 및 Environment Variable Management 용 DOTENV를 포함한 필요한 라이브러리가 협상 에이전트를 설정하기 위해 가져옵니다.
import os
import streamlit as st
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
from langchain_groq import ChatGroq
from dotenv import load_dotenv
2 단계 : Groq API 키를로드합니다
응용 프로그램은 환경 파일에서 Groq API 키를로드합니다. 키가 없으면 오류 메시지가 표시되고 실행 중지되어 승인되지 않은 액세스를 방지합니다.
load_dotenv()
groq_api_key = os.getenv("GROQ_API_KEY")
if not groq_api_key:
st.error("Groq API Key not found in .env file")
st.stop()
3 단계 : 간소화 인터페이스 설정
Streamlit 앱은 제목 및 넓은 레이아웃으로 구성됩니다. 이를 통해 협상 에이전트와 참여하기위한 구조적이고 사용자 친화적 인 인터페이스를 보장합니다.
st.set_page_config(page_title="AI Negotiation Agent", layout="wide")
st.title("🤝 AI-Powered Negotiation Agent")
AI 생성 전략을 사용자 정의하기 위해 사용자가 선호하는 협상, 비즈니스 거래, 프리랜서 가격 또는 계약 분쟁을 선택할 수있는 사이드 바가 추가됩니다.
st.sidebar.header("Negotiation Settings")
st.sidebar.markdown("Select your negotiation type and explore the details below.")
negotiation_type = st.sidebar.selectbox("Negotiation Type", [
"Salary Negotiation",
"Business Deal",
"Freelance Pricing",
"Contract Dispute"
])
- 사용자가 협상 유형을 선택하는 사이드 바를 추가합니다.
- 사용 가능한 옵션 : 급여, 비즈니스 거래, 프리랜서 가격, 계약 분쟁.
5 단계 : 사용자를위한 지침
확장 가능한 섹션은 앱 사용 방법에 대한 단계별 지침을 제공합니다. 사용자는 제안 세부 정보를 입력하고 “AI 전략 생성”버튼을 클릭하고 필요에 따라 협상 설정을 조정합니다.
with st.expander("How to use this app"):
st.markdown("""
- Fill in your offer, the opposing offer, and key constraints.
- Click **Generate AI Strategy** to receive suggestions.
- Use the sidebar to adjust the negotiation type.
""")
STEP6 : AI 처리를위한 프롬프트 템플릿
AI 모델이 주요 협상 세부 사항을 수신 할 수 있도록 구조화 된 프롬프트 템플릿이 정의됩니다. 여기에는 협상 유형, 제안, 제약 조건 및 반대자, 위험 평가 및 신뢰 점수와 같은 예상 AI 출력이 포함됩니다.
negotiation_template = """
You are an expert negotiator. Analyze this scenario and suggest the best negotiation strategy:
- **Negotiation Type:** {negotiation_type}
- **Your Offer:** {your_offer}
- **Other Party's Expected Offer:** {other_party_stance}
- **Key Constraints:** {key_constraints}
### Provide:
1. The best counteroffer.
2. Justification with reasoning.
3. Risk assessment (if any).
4. Confidence score (out of 100%).
"""
- AI 처리를위한 구조적 프롬프트를 정의합니다.
- AI는 다음과 같이 생성됩니다 : 반격자, 추론, 위험 평가, 신뢰 점수.
Step7 : AI 모델을로드하는 기능
Chatgroq API를 사용하여 DeepSeek R1 (Distill LLAMA-70B) 모델을 초기화하기위한 함수가 구현됩니다. 그만큼 streaming=True
매개 변수는 실시간 응답 생성을 가능하게합니다.
def load_LLM(groq_api_key):
"""Loads the ChatGroq model for processing."""
llm = ChatGroq(groq_api_key=groq_api_key, model_name="deepseek-r1-distill-llama-70b", streaming=True)
return llm
- Chatgroq API를 통해 DeepSeek R1 (Distill Llama 70B)을 초기화합니다.
- Streaming = true는 실시간 응답을 허용합니다.
Step8 : 사용자 입력 수집
양식은 제안, 상대방의 예상 제안 및 주요 제약을 포함하여 사용자 입력을 캡처합니다. 이 정보는 AI 모델이 효과적인 협상 전략을 생성하는 데 필수적입니다.
st.header(f"💼 {negotiation_type}")
st.markdown("Enter details of your negotiation scenario below:")
with st.form(key="negotiation_form"):
col1, col2 = st.columns(2)
with col1:
your_offer = st.text_input("Your Offer (₹ or %):", placeholder="Enter your proposed offer...")
with col2:
other_party_stance = st.text_input("Other Party's Expected Offer (₹ or %):", placeholder="Enter expected counteroffer...")
key_constraints = st.text_area("Key Constraints", height=150, placeholder="List deal-breakers, goals, must-haves...")
submit_button = st.form_submit_button("Generate AI Strategy")
사용자가 입력하는 양식을 만듭니다.
- 그들의 제안
- 예상 대 반격
- 모든 제약 또는 거래 차단기
9 단계 : AI 기반 협상 전략 생성
제출되면 앱은 데이터를 처리하기 전에 입력 필드를 검증합니다. AI 모델이로드되고 전략 생성을위한 프롬프트가 전송됩니다. 응답에는 반대자, 정당화, 위험 평가 및 신뢰 점수가 포함됩니다. 필드가 없으면 오류 메시지로 인해 사용자에게 양식을 작성하도록합니다.
if submit_button:
if your_offer and other_party_stance and key_constraints:
with st.spinner("Generating negotiation strategy..."):
llm = load_LLM(groq_api_key)
prompt_obj = PromptTemplate(
input_variables=["negotiation_type", "your_offer", "other_party_stance", "key_constraints"],
template=negotiation_template
)
chain = LLMChain(llm=llm, prompt=prompt_obj)
result = chain.run(
negotiation_type=negotiation_type,
your_offer=your_offer,
other_party_stance=other_party_stance,
key_constraints=key_constraints
)
st.success("Strategy generated successfully!")
st.subheader("💡 AI's Suggested Strategy:")
st.markdown(result)
else:
st.error("Please fill in all fields before generating a strategy.")
- 사용자는 협상 시나리오 (제안, 상대방의 제안, 제약 조건)를 제출합니다.
- 코드는 모든 필드가 채워지는지 확인합니다.
- AI가 입력을 처리하는 동안 로딩 스피너가 나타납니다.
- DeepSeek AI는 프롬프트를 기반으로 협상 전략을 생성합니다.
- 반격자, 위험 및 정당화를 포함하여 전략이 표시됩니다.
- 입력이 없으면 오류 메시지가 대신 나타납니다.
GitHub에서 전체 코드를 여기에서 얻으십시오
산출

입력
협상 유형 : 급여 협상
- 귀하의 제안 : ₹ 15 lpa (연간 라크)
- 기타 당사자의 예상 제안 : ₹ 12 lpa
주요 제약 조건 :
- 비용을 충족시키기 위해 최소 ₹ 14 lpa.
- 하이브리드 작업 유연성을 선호합니다.
- 성능 기반 인센티브에 개방.
산출

결론
협상은 전문 및 개인 생활 모두에서 귀중한 기술이며, DeepSeek-R1을 사용하는 협상 에이전트는 데이터를 사용하여 개선 된 거래를 협상하는 데 도움이됩니다. 인상, 비즈니스 투자 또는 계약 조건을 협상하든이 앱은 AI 생성 카운터 오프, 위험 수준 및 신뢰 점수로 더 나은 결정을 내릴 수 있도록 도와줍니다.
이 유틸리티는 DeepSeek-R1 Distill LLAMA-70B, Langchain 및 Streamlit을 활용하여 협상을 용이하게합니다. 불확실성을 최소화하고 성공률을 극대화하는 데 도움이됩니다.
AI 덕분에 더 이상 최선의 움직임을 두 번째로 추측 할 필요가 없습니다. 자신감과 협상 할 수 있습니다!
주요 테이크 아웃
- 앱은 지능적인 반격자를 제공하기 위해 제안 및 제약 조건을 분석합니다.
- 급여 협상, 비즈니스 거래, 프리랜서 가격 및 계약 분쟁을 지원합니다.
- AI는 협상에서 성공 가능성과 잠재적 위험을 평가합니다.
- 사용자는 제안과 주요 제약을 입력하여 맞춤형 전략을 생성 할 수 있습니다.
- DeepSeek R1 Distill Llama 70B & Langchain을 사용하여 앱은 데이터를 신속하게 처리하고 실행 가능한 전략을 제공합니다.
자주 묻는 질문
A. load_llm () 함수는 Chatgroq API를 사용하여 DeepSeek R1 Distill Llama 70B 모델을 초기화합니다. 사용자 입력을 처리하고 협상 전략을 생성하는 LLM (언어 모델)을 반환합니다.
A. PromptTemplate AI로 전송 된 프롬프트의 구조를 정의합니다. AI는 의미있는 응답을 생성하기 위해 필요한 모든 세부 사항 (제안, 제약, 협상 유형)을 수신하도록합니다.
A. API 키는 민감한 데이터이며 .env 파일에 저장하면 보안을 유지합니다. DotEnV 패키지는이 키를 코드에 노출하지 않고 환경에로드합니다.
A. 제출하기 전에 앱은 입력 필드 (Your_offer, Other_Party_stance, key_constraints)를 확인합니다. 필드가 비어 있으면 전체 데이터 입력을 보장하기 위해 오류 메시지가 표시됩니다.
이 기사에 표시된 미디어는 분석 Vidhya가 소유하지 않으며 저자의 재량에 따라 사용됩니다.
Post Comment