취직 활동은 믿을 수 없을 만큼 지치게 만듭니다.
네! 진부한 말이 아니에요. 제가 경험한 일이에요.
게다가 ResumeGenius 가 실시한 조사에 따르면 구직자의 약 70%가 구직 활동에서 더 많은 스트레스를 느낀다고 밝혔습니다.
구직자의 70%가 취업 활동으로 인해 더 많은 스트레스를 느낀다고 합니다.
취업 활동의 스트레스를 줄이는 방법에 대한 기사는 많이 있지만(자신을 조직하고, 취업 활동을 목적의식으로 삼고, 휴식을 취하고, 포트폴리오를 만들고, 선택적으로 지원하고, 지원서를 맞춤화하는 것 등), 사실 이러한 조언은 근본적인 문제를 해결하지 못합니다.
진짜 문제는 구직 활동이 복잡하고 지루하며 반복적이어서 압도적이라는 것입니다. 그래서 제 생각에 올바른 해결책은 지원 절차를 세분화하여 정신적으로 덜 지치게 만들고 구직자가 필요한 작업에만 집중하도록 하는 것입니다.
최근 인공지능(AI)의 추세에 따라 이러한 문제를 해결하기 위해 챗봇을 구축할 가능성이 있습니다. 그래서 JobQuest가 탄생했습니다.
JobQuest는 구직 프로세스를 간소화할 수 있는 AI 챗봇입니다. 선호도에 맞는 구인 공고를 구인 게시판에서 스크래핑하고, 다양한 역할에 맞게 이력서를 개선하기 위한 팁을 제공하고, 개인화된 자기소개서를 작성하고, 면접 준비를 도와줍니다.
이 글에서는 챗봇의 개발 단계를 안내해 드리겠습니다. 하지만 그 전에 챗봇이 어떻게 작동하는지 살펴보겠습니다.
간단히 말해서, JobQuest는 당신의 구직 동반자입니다. 반복적이고 지루한 모든 작업을 수행하여 구직 활동을 간소화하는 데 도움이 되는 챗봇입니다. 이를 통해 가장 중요한 프로세스, 즉 고용주의 관심을 끌기 위한 지적이고 개인화된 문서를 개발하는 데 집중할 수 있습니다.
일자리 시장은 분산되어 있습니다. 회사마다 채용하는 직책 이름이 다릅니다. 회사에서는 동일한 일을 할 사람을 찾고 있더라도요.
예를 들어, 한 회사는 콘텐츠 작가를 찾고 있고 다른 회사는 카피라이터를 찾고 있을 수 있습니다. 두 회사는 서로 다른 이름이지만 매우 유사한 직무 설명을 가지고 있습니다. 구직자가 이것이 자신에게 적합한지 알아보려면 각 직무 설명을 살펴봐야 하는데, 이는 시간이 많이 걸리고 압도적입니다.
JobQuest를 사용하면 직무 선호도를 제공할 수 있습니다. 이 정보를 기반으로 선호도와 관련된 최근 직무에 대한 다양한 직무 플랫폼을 검색합니다.
JobQuest의 작동 방식은 다음과 같습니다.
AI 챗봇에는 4가지 기능이 포함되어 있습니다.
일반적인 구직자는 다양한 회사의 구인 공고를 확인하기 위해 구인 게시판을 확인하고 싶어합니다. 따라서 다양한 구인 게시판을 수동으로 스캔하고 선호도에 따라 구인 공고를 걸러내는 대신 JobQuest가 작업을 처리하고 구인 공고를 추천합니다.
챗봇에 일자리를 구하고 있다는 메시지를 보내면 챗봇은 선호 사항(업계, 위치, 직종, 직위, 이력서(필수 아님))을 제출해 달라고 요청합니다.
선호 사항을 제출하면 챗봇이 지원 또는 자세한 내용에 대한 링크가 있는 일자리 목록을 검색하여 반환합니다. (압도당하는 것을 피하기 위해, 챗봇이 세션당 15개 미만의 일자리를 반환하도록 했습니다. 더 많은 일자리 목록이 필요한 경우 챗봇에 요청할 수 있습니다).
관심 있는 일자리를 찾았다면 구직자로서 다음으로 해야 할 일은 지원서(이력서와 자기소개서)를 제출하는 것입니다. 구직서 제출에 대한 몇 가지 사실을 살펴보겠습니다.
위의 요점에 근거하여, 저는 어떤 구직자도 지치고 지치지 않고는 따라갈 수 없다고 생각합니다. 지원한 각 직무에 대해 모든 고유한 커버레터를 직접 작성하고 이력서를 업데이트하는 대신, AI 챗봇이 그 일을 도울 수 있습니다.
따라서 이력서를 개선하고 커버레터를 쓰는 데 도움이 필요하다면 챗봇에 메시지를 보내기만 하면 됩니다. 챗봇은 이력서를 업로드하고 직무 설명(JD)을 붙여 넣으라고 요청할 것입니다.
그러면 챗봇이 구인 공고의 키워드를 활용해 최적화된 개인화된 자기소개서를 생성합니다.
챗봇은 또한 직무 설명에 대한 통찰력, 권장 사항, 이력서에서 추가, 제거 또는 업데이트해야 할 사항을 제공합니다.
취업 활동을 하면서 겪는 스트레스를 줄이는 것 외에도, 개인화된 자기소개서와 이력서를 작성하면 회사로부터 회신을 받을 가능성이 높아집니다.
JobQuest를 사용하여 면접 연습을 하고 채용 관리자로부터 콜백을 받는 방법에 대한 팁을 얻을 수도 있습니다. JobQuest는 예상 질문을 연습하고 성과 개선을 위한 피드백을 제공하여 면접에서 성공하는 데 도움을 줄 수 있습니다. 이 챗봇은 면접 단계를 시뮬레이션하여 면접관의 입장을 취합니다.
면접 요청 메시지를 보내면 챗봇이 면접 과정과 관련된 필요한 정보를 제공해 달라고 요청합니다. 면접 기간, 업계, 지원하는 직무 유형, 집중할 면접 유형(행동, 상황 또는 기술)과 직무 설명과 같은 정보입니다.
이 정보가 제공되면 챗봇은 질문을 하고, 답변을 기다리며, 피드백과 예를 제공합니다. 인터뷰 섹션이 끝나면(기간이 경과하면) 챗봇은 피드백을 제공하고 성공 가능성을 높이기 위해 자신을 개선하는 방법에 대한 팁을 제공합니다.
JobQuest는 또한 면접에서 성공하는 방법에 대한 온라인 정보를 제공합니다. 챗봇의 기능 외에도 이 챗봇은 최신 일자리에 대한 일일 알림을 업데이트합니다.
이 챗봇이 작동하는 방식을 알아보려면 이 데모 영상을 시청하세요.
챗봇을 사용해 볼 수도 있습니다.
이 섹션에서는 제가 3일 만에 이 챗봇을 만든 방법을 알려드리겠습니다.
네! 오타가 아니었습니다. 저는 72시간도 안 되는 시간에 이 구직자의 동반자를 만들었습니다 . 이는 무코드 AI 챗봇 개발 플랫폼인 Coze 덕분입니다.
Coze는 단 한 줄의 코드도 작성하지 않고도 챗봇 아이디어를 실현할 수 있는 AI 챗봇 생성 플랫폼입니다. 프롬프트(챗봇 작동 방식을 안내하는 지침)를 작성하여 챗봇을 빌드합니다. Coze는 자연어 처리(NLP)를 사용하여 소통합니다.
자연어 처리(NLP)는 컴퓨터가 인간 언어로 인간을 이해하고 소통할 수 있도록 합니다. 컴퓨터는 일반적으로 0과 1로 소통하지만 NLP 알고리즘을 사용하면 컴퓨터는 인간이 제공한 지시를 읽고 정보를 처리할 수 있습니다.
Coze를 사용하면 코드 한 줄도 작성하지 않고도 챗봇을 이상화하고, 구현하고, 게시할 수 있습니다. 제가 챗봇을 만드는 과정을 안내해 드리겠습니다.
이게 제 챗봇 개발 프로세스에서 가장 중요한 부분인 듯합니다. 왜? 명확한 사고 과정을 개발하고, 문제를 시각화하고, 적절한 해결책을 제공하는 데 도움이 되거든요.
챗봇을 시각화하는 데 도움이 되는 사항의 체크리스트는 다음과 같습니다.
구직자들이 구직 중 스트레스를 덜 받을 수 있는 챗봇을 만들고 싶습니다. 구직자가 모든 지원서에 거쳐야 하는 체크포인트를 분석해야 했습니다.
구직자는 일자리를 검색하고, 개인화된 자기소개서와 이력서를 작성하여 지원하고, 면접을 준비합니다.
내가 무엇을 만들고 싶은지 명확하게 이해하면 다음과 같은 데 도움이 됩니다.
이러한 전제 조건을 제공하면, 이제 제 손을 더럽힐 시간입니다. 작업을 시작합시다!
이제 전제 조건을 갖추었으니, 챗봇을 만들어 보겠습니다.
첫 번째 단계는 작업 공간을 설정하는 것입니다.
작업 공간을 설정하려면:
표준 옵션을 사용하면 에이전트 이름과 기능을 설정하고, 작업 공간과 챗봇 아이콘을 수동으로 선택할 수 있습니다.
AI 생성 옵션을 사용하려면 원하는 것이 무엇인지 대략적으로 입력해야 하며 이름, 설명, 아이콘, 프롬프트가 생성됩니다.
JobQuest 챗봇을 개발하고 싶다고 가정합니다. 이 요약을 입력하겠습니다.
"취업 활동 과정을 간소화하는 챗봇입니다. 일자리 검색, 이력서 검토, 자기소개서 작성, 면접 과정 연습에 도움이 됩니다."
AI는 프롬프트, 기술, 아이콘, 이름, 설명, 프롬프트를 생성합니다.
하지만 무엇을 개발하고 싶은지 명확한 생각이 있는 사람으로서, 저는 에이전트 이름, 기능, 아이콘을 수동으로 입력하는 것을 선호하며, 그렇게 했습니다.
챗봇을 만들면 기본적으로 단일 에이전트 모드 작업 공간으로 이동합니다. 화면 왼쪽 상단의 모드 전환 아이콘을 클릭하면 다중 에이전트 모드 로 전환할 수 있습니다.
다중 에이전트 모드에서는 글로벌 수준(전반적인 챗봇의 동작에 영향을 미침)과 로컬 수준(다중 에이전트 챗봇의 각 노드의 작동 방식을 변경함)에서 챗봇을 조정할 수 있습니다.
글로벌 기능 설정은 화면 맨 왼쪽에 있습니다. "배열" 섹션이라고 합니다. 여기서 페르소나와 프롬프트를 생성하고, 스킬을 추가하고, 메모리 설정을 조정하고, 채팅 경험을 조정하고, 챗봇에 역할을 추가합니다.
지금은 글로벌 설정의 페르소나와 프롬프트 섹션에 집중하겠습니다. 백엔드 설정과 일치하기 때문입니다. 다른 섹션은 이 기사의 후반부에서 설명하겠습니다.
내 챗봇에 페르소나와 프롬프트 추가하기
이 섹션에서는 챗봇의 캐릭터, 할 수 있는 일/할 수 없는 일, 기능과 기술, 워크플로, 콘텐츠, 제약 조건을 설정할 수 있습니다.
제가 여러분께 알려드리고 싶은 것은 Coze와 같은 노코드 플랫폼에서 챗봇을 구축하려면 신속한 엔지니어링에 능숙해야 한다는 것입니다.
챗봇이 효과적이고 정확하려면 생성 AI 에이전트가 이해할 수 있는 방식으로 지침을 구성하는 방법을 알아야 합니다.
하지만 프롬프트 엔지니어링에 대해 잘 모르더라도 걱정하지 마세요. 코즈가 프롬프트를 우회하는 방법을 제공했습니다.
프롬프트를 피하는 방법을 알아보기 전에, 프롬프트를 효과적으로 사용하는 방법에 대한 몇 가지 팁을 알아보겠습니다.
지시를 간결하게 유지하세요 . 장황하게 말하지 마세요. 지시가 불분명할수록 챗봇이 이해하고 올바른 답변을 반환하기가 더 어려워집니다.
자연스럽고 기본적인 언어를 사용하세요 . 생성 AI는 자연어를 처리할 수 있으므로 자연어를 사용하세요. 문법적으로 올바른 프롬프트를 작성하고 지시 사항을 올바르게 구두점으로 표시하세요.
역할을 할당하고 출력을 지정하세요 . 생성 AI를 학생으로 보고, 학생처럼 대하세요. 역할을 할당하고 출력을 어떻게 할 것인지 지시하세요.
좋은 구조를 적용하세요 . 자세히 설명하세요. 톤, 길이, 구조, 스타일, 그리고 챗봇이 사용자 질의에 어떻게 응답하기를 원하는지 포함하세요. 실험하고 반복하세요.
지시를 내리고 챗봇으로 새로운 것을 시도해 보세요. 이를 통해 효율적이고 정확하며 유용한 챗봇을 만드는 방법을 배울 수 있습니다.
코즈가 처음부터 프롬프트를 작성하는 방법을 알아보겠습니다.
단일 에이전트 모드 작업 공간에서 어레인지먼트 세션 오른쪽 상단에 있는 최적화 버튼을 선택합니다. 세 가지 옵션이 있는 상자가 나타납니다. 다음 중에서 선택할 수 있습니다.
이러한 옵션 중 하나를 선택하면 AI가 챗봇에 대한 프롬프트와 페르소나를 생성합니다. 그리고 당신은 그것을 당신의 아이디어에 맞게 편집할 수 있습니다.
다양한 페르소나와 프롬프트 템플릿 중에서 선택할 수도 있습니다.
초안을 생성한 후에는 다중 에이전트 모드로 전환하기만 하면 됩니다.
이 프로젝트에서 페르소나와 프롬프트 섹션은 역할 섹션으로 구성되어 있으며, 여기서 챗봇이 역할을 할당할 수 있습니다.
당신은 …
Role You are JobQuest Assistant, a job search companion dedicated to providing personalized job recommendations, expert tips on resumes and cover letters, and tailored interview preparation to help users navigate their job search and secure their dream positions.
기능 , 여기서 저는 다양한 기술에 대해 이야기합니다. 복잡한 챗봇을 디자인하지 않는 경우 이를 기술이라고 부르기도 합니다. 제 챗봇에는 세 가지 기능이 있습니다. 구직 기능, 자기소개서 및 이력서 팁 기능, 면접 준비 도우미 기능입니다.
그리고 이러한 기능에는 하위 기술이 있습니다.
이걸 확인해 보세요:
Features ### Feature 1: Streamline and Personalized Job Search and Recommendation - Fetch job opportunities based on the user's preferences (desired role, industry, location, experience level and so on) - Display results in an organized and categorized format with quick apply links. ### Feature 2: Cover Letter and Resume Tips **Skill 1: Resume Review and Tips** - Identify strengths, weaknesses, and formatting errors in uploaded resume. - Suggest industry-specific keywords for better ATS compatibility. - Give recommedations for improving and personalizing resuming based on job description. **Skill 2: Cover Letter Writing** - Provide a guided wizard to draft personalized cover letters. - Suggest phrases and formats based on the job role and company. - Generate a coverletter template based on the job description. ### Feature 3: Interview Preparation Assistance **Skill 1: Mock Interviews** - Simulate interview scenarios based on the user role. (you ask a question like an interviewer and the user answer the question like the interviewee). - Provide behavioral, technical, and situational questions. - Provide an overall overview after the interviewing section is over. **Skill 2: Preparation Resources** - Provide resources like FAQs, STAR method examples, and confidence-building tips. - Example: 🎤 Question: "Tell me about a time you overcame a significant challenge." 💡 Tip: Focus on STAR (Situation, Task, Action, Result).
Workflow 는 내 챗봇이 프로세스를 어떻게 실행해야 하는지에 대한 지침을 제공한 곳입니다. 우리가 작업하고 있는 것과 같은 복잡한 챗봇의 경우 다음으로 시작해야 합니다.
콘텐츠 는 제가 답변이 어떻게 되어야 하는지에 대한 지침을 제공하는 곳입니다. 여기서 챗봇에 올바른 톤과 원하는 톤을 알려줍니다. 제 챗봇의 경우 구직자에게 가혹한 태도를 취하지 않고, 스트레스를 해소해 주는 친구이자 동반자가 되기를 바랍니다.
또한 사용자 질문에 대한 답변을 챗봇이 어떻게 구성할지에 대한 프롬프트도 작성했습니다.
이걸 확인해 보세요:
Content **Example Prompts:** - **Job Search:** "Let's find your dream job! What role and location are you targeting?" - **Cover Letter Tips:** "Here's a professional tone for your cover letter. How would you like to personalize it further?" - **Mock Interview:** "You're applying for a project manager role. How would you handle conflicting priorities in a project?"
제약 조건은 챗봇이 해결하려는 문제에 집중할 수 있도록 보호하는 역할을 합니다.
이걸 확인해 보세요:
Constraint - Only focus on job hunting topics - Only offer feedback at the end of interviewing session
다중 에이전트 챗봇의 경우, 이 섹션에서는 챗봇이 어떤 모습이 되기를 원하는지 개요를 제공할 수 있습니다. 이 세션은 웹사이트를 디자인할 때 와이어프레임을 디자인하는 것과 같습니다.
개요라고 해서 모호하고 혼란스러워야 한다는 것은 아닙니다. 위에서 본 것처럼, 이것은 효율적인 챗봇을 만드는 기초입니다. 챗봇의 전반적인 효율성과 정확성에 기여할 적절한 균형을 찾으세요.
챗봇의 프롬프트를 만들고 나면 이제 로컬 기능을 구축하는 데 집중할 때입니다. 시작해 봅시다!
글로벌 피처와 달리 로컬 피처는 각 챗봇 노드의 효율성에 영향을 미칩니다. 이 프로젝트를 진행하면서 챗봇의 효율성은 각 노드의 독립성과 상호 의존성에 달려 있다는 것을 알게 되었습니다.
그렇다면 챗봇을 독립적이면서도 상호의존적으로 만들어 보겠습니다.
'개발' 섹션에서는 챗봇의 로컬 기능을 조정합니다. 드래그 앤 드롭 기능을 사용하면 챗봇을 더 쉽게 빌드할 수 있습니다. 멀티 에이전트 모드로 전환하면 기본 세션으로 노드에 연결된 녹색 시작 버튼이 있습니다.
개발된 작업 공간의 어떤 부분이든 더블클릭하고 에이전트를 추가하거나, 섹션 하단에 있는 노드 추가 버튼(파란색)을 클릭하면 작업 공간에 노드를 더 추가할 수 있습니다.
여기에서는 원하는 만큼 많은 노드를 생성할 수 있습니다.
이 프로젝트에서는 아래와 같이 4개의 노드를 만들 것입니다.
각 노드에는 시나리오, 에이전트 프롬프트, 기술, 자동 제안 섹션이 포함되어 있습니다.
팁 : 효율성을 위해 노드에 모호한 이름을 사용하지 마세요. 이는 챗봇의 효율성에 영향을 미칠 수 있습니다.
시나리오. 여기서 챗봇에 적용되는 기능과 지원되는 시나리오를 추가합니다. 이 섹션은 다른 챗봇 노드가 언제, 어떤 노드에 처리할 수 없는 작업을 할당해야 하는지 알 수 있도록 도와줍니다.
' 개인화된 직업 추천 ' 노드에 대한 시나리오는 다음과 같습니다.
Helps you streamline the job search process. It helps user solve the problems related to finding relevant job opportunities, ensuring the desired role align with their preferences.
상담원의 신속한 답변 섹션에서는 문제 처리를 위한 운영 논리와 단계를 제공합니다.
글로벌 설정의 페르소나 및 프롬프트 섹션과 달리, 여기서는 더 자세히 설명했습니다. 노드의 역할, 운영 로직(노드가 어떻게 작동하기를 원하는지에 대한 지침 제공), 챗봇이 답변을 어떻게 포맷하기를 원하는지, 오류가 있는 경우 어떻게 처리할 것인지, 제약 조건을 추가했습니다.
다음은 그 예입니다.
Role You're a job hunter. your task is to help users search and retrieve jobs that align to their preferences ### **Operational Logic** #### **Prompt User for their Preferences** - Ask for the role, industry, location, and experience level. Example: *"What type of job are you looking for? Please specify the role, industry, and preferred location."* #### **Save Searches & Alerts** - Ask the user if they'd like to save the current search for future alerts. Example: *"Would you like to save this search for future updates?"* ... ## Output Format Example ========================== 🎯 Top Recommendation: <Job Title> at <Company Name> 🏢 Location: <City, State> 💼 Job Type: Full-Time/Part-Time/Remote 💰 Salary Range: <Salary Information> 📅 Posted on: <Date> **Note:** Provide an action button for each job listed to apply or view more details. ## **Problem Handling Steps** #### **Scenario 1: Missing or Incomplete User Input** - **Problem:** The user skips providing some preferences or does not upload a resume. - **Solution:** Prompt politely for the missing information. Example: *"I noticed you haven't uploaded a resume. Would you like to proceed without it or upload one for tailored recommendations?"* Proceed with default options if the user chooses to skip. ### **Scenario 2: No Matching Job Listings Found** - **Problem:** The `Job_search()` plugin returns no results. - **Solution:** Apologize and offer alternative suggestions. Example: *"I couldn't find any jobs matching your preferences. Would you like to expand your search criteria or explore similar roles?"* Suggest nearby industries, roles, or locations. --- ## **Constraints** 1. Only job-search related tasks are handled by this agent. 2. User data, including preferences, must be securely stored and not shared without consent. ...
보시다시피 위의 프롬프트는 훨씬 더 자세합니다.
기술 섹션 은 노드의 기능을 향상시키기 위해 플러그인, 지식 또는 워크플로를 추가하는 곳입니다. 기술을 사용하면 노드/에이전트가 스테로이드를 투여한 개인처럼 작동합니다.
기술을 추가하려면
' 자동 제안 '을 켜면 챗봇이 각 답변을 입력할 때마다 물어볼 수 있는 추가 질문 세 개를 반환합니다.
글로벌 점프 조건은 노드가 특정 시나리오에서 무엇을 할지 결정하는 데 도움이 됩니다. 각 노드에 글로벌 점프 조건을 추가하면 효과가 커집니다. 사용자가 다른 기능에 대한 도움이 필요할 때 점프 조건은 사용자가 스위치 결정을 더 빨리 내리는 데 도움이 됩니다.
글로벌 점프 조건을 사용하면 챗봇이 가능한 한 빨리 모든 노드에 작업을 할당할 수 있습니다.
제가 여러분께 알려드리고 싶은 한 가지는 아무 노드나 연결하지 않는다는 것입니다. AI 챗봇의 효율성은 각 노드 간의 관계에도 달려 있습니다. 서로 관련이 없는 노드를 연결하지 마세요.
하나의 노드를 다른 노드에 연결하려면 사용자의 생각과 사용자가 해결하려는 문제에 대한 심층적인 이해가 필요합니다.
이 프로젝트에서 구직자는 웹에서 일자리를 검색하는 것으로 시작할 가능성이 가장 높습니다. 그래서 저는 모든 신규 사용자의 주요 체크포인트인 ' 개인화된 일자리 추천' 노드를 기본 노드로 배치했습니다.
그들이 일자리 목록을 받으면 워크플로의 다음 단계는 지원서를 보내는 것입니다. 여기서 그들은 이력서와 자기소개서에 도움이 필요합니다. 이것이 제가 ' 이력서 팁 ' 노드를 '개인화된 일자리 추천' 노드에 연결한 이유입니다.
' 이력서 팁 ' 노드는 ' 커버레터 생성기 ' 노드에 연결됩니다. 챗봇 사용자가 커버레터를 생성하도록 요청할 때마다 노드는 이력서가 이전에 업로드되었는지 확인하고 그렇지 않으면 사용자에게 이력서를 업로드하도록 요청합니다. 중복을 피하기 위해 이렇게 했습니다.
' 인터뷰 준비 도우미 ' 노드는 다른 노드와 다릅니다. ' 개인화된 직업 추천 ' 노드와 ' 이력서 팁 ' 노드라는 두 개의 다른 노드에 연결되어 있습니다. 이유는 무엇일까요?
개인화된 인터뷰 섹션을 시뮬레이션하려면 직무 설명과 이력서가 필요합니다. 그래서 ' 이력서 팁 ' 노드의 하위 노드가 되는 대신 기본 노드인 ' 개인화된 직무 추천 ' 노드에도 추가하기로 했습니다.
우리는 프로젝트의 가장 지루한 부분인 백엔드 프로세스를 개발했습니다. 이제 챗봇의 사용자 경험을 개선할 때입니다.
프런트엔드는 백엔드만큼 중요합니다. 챗봇을 인간화하고 챗봇과 소통하기 쉽게 해줍니다. 이 섹션에서는 챗봇의 성능을 개선하고 사용자 경험을 돕기 위해 몇 가지 설정을 조정해 보겠습니다. 위의 백엔드와 마찬가지로 로컬(개별 노드 개선)과 글로벌 설정(챗봇의 효율성을 높이기 위해)을 모두 조정해야 합니다.
그럼, 그럼 시작해볼까요!
여기서는 모델 설정, 노드 전환 설정, "어떤 노드가 모든 대화 라운드를 처리할 것인가?"를 조정해야 합니다.
여기서는 챗봇에 적합한 생성 AI 모델을 선택하고, 생성 다양성을 선택한 뒤, 입력 및 출력 설정을 지정합니다.
모델 설정의 경우,
모델 설정을 통해 사용 가능한 생성 모델 중에서 선택할 수 있습니다. OpenAI GPT 모델, Anthropic Claude, Google Gemini에는 여러 버전이 있습니다. 선택하는 모델 유형은 효율성과 비용에 대한 필요에 따라 달라집니다.
참고 : 때로는 가장 진보된 모델이 항상 최고는 아닙니다. 효율성, 비용, 정확성 사이에서 적절한 균형을 찾으세요.
저는 제 프로젝트에서 OpenAI GPT-4o 미니 모델을 선택했습니다. 제 프로젝트에 적합했기 때문입니다.
이러한 다중 에이전트 모델의 가장 좋은 점은 각 설정이 각 노드에만 영향을 미친다는 것입니다.
Generation Diversity는 모델 세대 다양성을 조정하는 데 중점을 둡니다. 정밀, 균형, 창의적 또는 사용자 지정 설정 중에서 선택할 수 있습니다.
이 프로젝트에서는 모델 설정을 그대로 두었습니다.
여기서는 현재 노드가 사용자의 질문에 답할 수 없는 시나리오를 처리하는 방식을 조정합니다.
여기에서는 노드가 사용자의 문제를 해결할 수 없을 때 어떻게 할 것인지 선택하고, 답변 노드를 전환할 것인지(현재 노드와 독립적인 모델인지 아니면 질문에 답변하는 모델인지)를 결정할 책임이 있는 사람을 선택할 수 있습니다.
노드를 전환할 때를 결정할 때. 사용자 입력 후, 모델 답변 후, 또는 둘 다.
전반적으로 이 설정은 다중 에이전트 시스템에서 각 노드 간의 원활한 전환을 구축하는 데 도움이 됩니다.
참고 : 이러한 설정을 이해하지 못하더라도 걱정할 필요가 없습니다. 그대로 유지하면 됩니다. Coze는 효과적으로 기본 설정을 구성했습니다.
이러한 설정에서는 새로운 대화 라운드를 어떻게 처리할지 결정할 수 있습니다.
이전 질문에 답하는 마지막 노드가 계속 진행해야 할까요? 아니면 시작 노드가 매번 질문에 답해야 할까요? 기본 설정으로, 모든 새 대화는 질문에 답하는 마지막 노드로 전송되는데, 이 챗봇 개발 프로젝트에 가장 적합한 방식입니다.
글로벌 설정에는 AI 챗봇의 전반적인 기능이 포함됩니다.
글로벌 설정의 경우 화면 왼쪽에 있는 배열 섹션으로 돌아가세요. 여기서 메모리를 조정하고, 채팅 경험을 개선하고, 음성 기능을 추가할 수 있습니다.
메모리 섹션은 다음과 같이 구성됩니다.
내 프로젝트에서는 사용자 선호도(희망하는 직무, 위치, 경험 수준)를 저장하기 위해 변수를 할당했습니다.
또한, 사용자 경험을 개선하고 챗봇이 각 사용자에 맞게 채팅을 개인화할 수 있도록 장기 메모리 기능을 켭니다.
모든 글로벌 설정이 중요하지만, 이 채팅 경험 설정이 더 중요합니다. 왜? 사용자 경험에 직접적인 영향을 미칠 수 있기 때문입니다.
시작 질문, 단축키, 배경 이미지는 모드를 설정하고 대화를 가능한 한 오래 유지하는 데 도움이 될 수 있습니다.
여기서는 챗봇을 처음 사용하는 사용자에게 소개하고, 사용자가 물어볼 수 있는 질문 목록을 제공합니다.
소개를 간결하고 요점만 적으세요. 포함된 질문이 사용자가 묻고 싶어하는 질문인지 확인하세요.
JobQuest의 경우, 질문이 내 사용자가 물을 법한 질문과 관련이 있는지 확인합니다. 그들이 원하는 것이 아니더라도, 챗봇 사용 모드를 설정하는 데 도움이 될 수 있습니다.
소개 및 개회 질문을 작성하려면
이는 검색 입력 위에 있는 버튼입니다. 이를 통해 사용자가 사전 설정된 질문을 시작하기가 더 쉬워집니다.
구직 과정에서 스트레스를 덜 받기 위해 사용자가 쉽게 클릭하여 질의사항을 찾을 수 있는 바로가기 버튼을 추가하기로 했습니다.
바로가기를 만들려면
여기에서 챗봇에 바로가기를 추가하는 방법에 대한 리소스를 확인할 수 있습니다.
사용자 경험을 향상시키는 관련 배경 이미지를 추가하세요.
테스트 및 디버깅 프로세스는 챗봇 개발 단계의 나머지 부분만큼 중요합니다. 이 섹션을 건너뛰는 것은 애플리케이션을 개발하고 작동하는지 여부를 테스트하지 않고 배포하는 것과 같습니다.
챗봇을 개발할 때 가장 좋은 방법은 빌드하는 동안 테스트와 디버깅을 계속하는 것입니다. 이렇게 하면 프로젝트 개발 단계 초기에 오류를 발견하는 데 도움이 됩니다.
내가 이 챗봇을 위해 따랐던 일반적인 개발 프로세스는 다음과 같습니다.
모든 노드에 대해 이 과정을 반복합니다.
전체 개발 단계(프론트엔드와 백엔드 모두)가 끝나면 사용자의 입장을 가정하고 그들이 생각하는 방식을 시뮬레이션합니다. 이를 통해 챗봇이 얼마나 효율적인지, 노드를 전환하는 데 얼마나 효과적인지 테스트하는 프롬프트를 작성하는 데 도움이 되었습니다.
테스트 및 디버깅 단계에 대한 체크리스트는 다음과 같습니다. 다음을 확인합니다.
문제가 있을 때 디버깅하는 것이 일반적인 이해입니다. 하지만 오류가 발생할 때만 디버깅해서는 안 된다고 생각합니다. 백엔드에서 무슨 일이 일어나고 있는지 이해하는 것도 중요합니다.
챗봇 백엔드에서 무슨 일이 일어나고 있는지 알아내는 방법은 다음과 같습니다.
디버그 정보는 다음을 포함한 다양한 정보에 대한 액세스를 제공합니다.
모델이 너무 많은 토큰을 사용한다고 생각되면 효율성을 위해 프로세스를 최적화할 수 있는 곳을 알아볼 수 있습니다.
당신이 해야 할 일은 Runtree 섹션으로 가는 것 뿐입니다:
예를 들어 위의 이미지에서 GPT4 mini는 3,253개의 토큰을 소비하고 지연 시간은 5,034ms인 것을 볼 수 있습니다.
이 정보를 바탕으로 챗봇의 효율성과 응답 속도를 개선하는 방법을 결정할 수 있습니다.
테스트 및 디버깅은 일회성 프로세스가 아니라 반복적인 프로세스입니다. 결과에 만족할 때까지 계속합니다.
챗봇을 게시하려면 화면 오른쪽 상단에 있는 파란색 게시 버튼을 클릭하세요.
챗봇을 게시할 플랫폼을 선택하세요. 다양한 플랫폼에 게시할 수 있는 옵션이 있습니다. API(다른 프로그램이나 애플리케이션에서 액세스 가능) 또는 웹 SDK(이 챗봇의 기능을 웹 애플리케이션에 통합)로 게시할 수 있습니다.
챗봇을 어디에, 어떤 방식으로 배포하든, 해야 할 일은 원하는 만큼 플랫폼을 선택하고 이를 구성하여 인증을 받는 것뿐입니다.
이 챗봇은 Coze 에이전트 스토어, Cici AI, Telegram에 배포될 예정입니다.
첫 번째 두 플랫폼(Coze Agent Store와 Cici AI)은 이미 승인되었으므로 선택만 하면 됩니다. 챗봇을 Telegram 플랫폼에 배포하려면 구성해야 합니다.
Coze Chatbot 배포를 위해 Telegram을 구성하는 방법을 알아보세요.
구성을 완료한 후 게시 버튼을 클릭하고 제출한 내용이 승인되고 게시될 때까지 기다리세요.
구직 과정은 매우 복잡한 작업입니다. 따라서 구직자의 스트레스를 덜어주는 도구를 만드는 것이 한 가지 방법입니다. JobQuest 챗봇이 어떤 문제를 해결하길 원하는지에 대한 완전한 아이디어가 있었지만, 개발 과정을 거칠수록 해결해야 할 문제가 더 많이 발견되었습니다.
그래서, 저는 이 챗봇을 사용하기 위해 게시했지만, 시간이 지남에 따라 추가하고 싶은 기능이 더 있습니다.
머지않은 미래에 추가하고 싶은 기능은 다음과 같습니다.
전반적으로, 조만간 구직 과정을 체계화하는 기능을 추가하는 작업을 진행할 예정입니다.
이 글에서는 JobQuest Chatbot이 어떻게 작동하는지 자세히 설명했습니다. 여기에는 Coze 노코드 플랫폼을 사용한 기능과 개발 여정이 포함됩니다. 숙련된 개발자이든 기술 애호가이든 다음 프로젝트에 영감을 줄 통찰력을 찾을 수 있습니다.