Crewai -Analytics Vidhya와 함께 AI 쌍 프로그래머를 구축하십시오
소개
효율적인 소프트웨어 개발에 대한 수요는 귀중한 프로그래밍 파트너로서 인공 지능을 채택하는 것입니다. AI 기반 코딩 어시스턴트는 인간 쌍 프로그래머와 마찬가지로 코드 작성, 디버깅 및 최적화를 단순화하여 개발에 혁명을 일으키고 있습니다. 이 기사에서는 CrewAI 에이전트를 사용하여 AI 쌍 프로그래머를 구축하여 코딩 작업을 간소화하고 개발자 생산성을 높이는 것을 보여줍니다.
개요
이 안내서는 다음과 같습니다.
- 코딩 작업을 지원하는 Crewai의 역할을 이해합니다.
- 주요 구성 요소 : 에이전트, 작업, 도구 및 승무원 및 상호 작용.
- 실제 경험 코드 생성 및 검토를위한 AI 에이전트를 설정합니다.
- 협업 코딩을위한 여러 AI 에이전트 구성.
- Crewai를 사용하여 코드 품질을 평가하고 최적화합니다.
목차
- NVLM 1.0 D 74B의 질적 사례
- NVLM과 다른 LLM의 비교
- 다른 멀티 모달 LLM의 한계
- 이러한 한계를 해결합니다
- NVLM : 모델 및 교육 방법
- 교육 데이터
- 결과
- NVLM D 72B 액세스
- 필요한 라이브러리 가져 오기
- 모델 샤딩
- 이미지 전처리
- 동적 이미지 타일
- 이미지 로딩 및 전처리
- 모델로드 및 사용
- 텍스트 및 이미지 대화
- 자주 묻는 질문
AI 쌍 프로그래머 기능
AI 쌍 프로그래머는 몇 가지 장점을 제공합니다.
- 코드 생성 : 하나의 AI 에이전트를 사용하여 주어진 문제에 대한 코드를 생성하고 다른 사람과 함께 검토하십시오.
- 코드 개선 : 지정된 기준에 따라 기존 코드를 평가합니다.
- 코드 최적화 : 주석 또는 문서 추가와 같은 코드 향상을 요청합니다.
- 디버깅 : 코드 오류 해결에 대한 제안을받습니다.
- 테스트 사례 생성 : 테스트 중심 개발을 포함한 다양한 시나리오에 대한 테스트 사례를 생성합니다.
이 기사는 처음 두 기능에 중점을 둡니다.
Crewai는 무엇입니까?
Crewai는 AI 에이전트를 만드는 프레임 워크입니다. 주요 구성 요소는 다음과 같습니다.
- 에이전트 : 에이전트는 LLM (Lange Language Model)을 사용하여 입력 프롬프트를 기반으로 출력을 생성합니다. 도구와 상호 작용하고 사용자 입력을 수락하며 다른 에이전트와 통신합니다.
- 작업 : 설명, 에이전트 및 사용 가능한 도구를 포함하여 에이전트의 목표를 정의합니다.
- 도구 : 에이전트는 웹 검색, 파일 읽기 및 코드 실행과 같은 작업에 도구를 사용합니다.
- 승무원 : 과제에 대해 협력하고 상호 작용, 정보 공유 및 책임 위임을 정의하는 에이전트 그룹.
또한 읽으십시오 : Crewai와 함께 공동 작업 AI 요원 구축
이러한 개념을 설명하기 위해 에이전트를 구축합시다.
전제 조건
AI 쌍 프로그래머를 구축하기 전에 LLM에 대한 API 키를 얻으십시오.
API를 통해 LLM 액세스
선택한 LLM의 API 키를 생성하고 개인 정보를 유지하는 동안 프로젝트 액세스를 위해 .env
파일에 단단히 저장하십시오.
예 .env 파일
샘플 .env
파일 :
필요한 라이브러리
다음 라이브러리 버전이 사용됩니다.
- Crewai - 0.66.0
- Crewai-Tools-0.12.1
코드 생성 자동화
이 섹션에서는 코드 생성 및 검토를위한 라이브러리 가져 오기 및 정의 에이전트를 보여줍니다.
라이브러리 가져 오기
dotenv import load_dotenv에서 load_dotenv ( '/. env') Crewai 수입 대리인, 작업, 승무원으로부터
코드 라이터 에이전트 정의
한 에이전트는 코드를 생성하고 다른 에이전트는 검토합니다.
code_writer_agent = agent (role = "소프트웨어 엔지니어", 목표 = '문서 및 댓글을 포함하여 최적화 및 유지 관리 가능한 코드 쓰기', Backstory = "" ""당신은 docstrings 및 댓글을 가진 최적화되고 유지 관리 가능한 코드를 작성하는 소프트웨어 엔지니어입니다. "", llm = 'gpt-4o-mini', verbose = true)
에이전트 매개 변수가 설명되었습니다
- 역할 : 에이전트의 기능을 정의합니다.
- 목표 : 에이전트의 목표를 지정합니다.
- Backstory : 더 나은 상호 작용을위한 컨텍스트를 제공합니다.
- LLM : 사용 된 LLM을 지정합니다 (옵션은 Litellm 설명서 참조).
- Verbose : 자세한 입력/출력 로깅을 활성화합니다.
코드 작성자 작업 정의
code_writer_task = task (description = '{language}에서 문제를 해결하기 위해 코드를 작성합니다. 문제 : {문제}', expect_output = '유형 힌트가있는 잘 구성된 코드', 에이전트 = code_writer_agent)
작업 매개 변수가 설명되었습니다
- 설명 : 변수 ({language}, {문제})가있는 명확한 작업 목표.
- 예상 _output : 원하는 출력 형식.
- 에이전트 : 작업에 할당 된 에이전트.
코드 검토 자 에이전트 및 작업 정의
마찬가지로 code_reviewer_agent
및 code_reviewer_task
정의하십시오.
Code_Reviewer_Agent = Agent (role = "Senior Software Engineer", 목표 = '코드가 최적화되고 유지 관리 가능하도록합니다', Backstory = "" "당신은 가독성, 유지 관리 및 성능에 대한 코드를 검토하는 선임 엔지니어입니다." ", llm = 'gpt-4o-mini', verbose = true) code_reviewer_task = task (description = "" ""{language}의 문제에 대해 작성된 검토 코드. 문제 : {문제} "" ", expect_output = '검토 코드', 에이전트 = code_reviewer_agent)
승무원 건축 및 운영
승무원을 만들고 실행하십시오.
승무원 = 승무원 = [code_writer_agent, code_reviewer_agent], tasks = [code_writer_task, code_reviewer_task], verbose = true) result = crew.kickoff (입력 = { '문제': 'tic-tac-toe 게임 만들기', '언어': 'Python'})
샘플 출력 :
결과 분석
result
객체에는 다음이 포함됩니다.
result.dict (). 키 () >>> dict_keys ([ 'raw', 'pydantic', 'json_dict', 'tasks_output', 'token_usage']))))). # 토큰 사용 result.dict () [ 'token_usage'] >>> { 'Total_tokens': 2656, ...} # 최종 출력 print (result.raw)
그런 다음 생성 된 코드를 실행할 수 있습니다.
자동화 된 코드 평가
이 섹션에서는 기존 코드 평가를 다룹니다.
평가 요구 사항 정의
먼저, 에이전트를 사용하여 요구 사항을 수집 한 다음 다른 에이전트를 사용하여 해당 요구 사항을 기반으로 코드를 평가하십시오.
도구 사용
FileReadTool
은 파일을 읽습니다. 도구는 에이전트 기능을 향상시킵니다. 도구를 작업 및 에이전트에 할당 할 수 있습니다. 작업 수준 할당은 에이전트 레벨 할당을 무시합니다.
요구 사항 수집 대리인 및 작업 설정
Crewai_tools에서 filereadtool을 가져옵니다 Code_Requirements_agent = Agent (role = "Data Scientist", 목표 = '주어진 문제에 대한 코드 요구 사항을 정의하십시오.', Backstory = "" "귀하는 문제를 해결하기 위해 코드에 대한 요구 사항을 정의하는 데이터 과학자입니다." ", llm = 'gpt-4o-mini', verbose = true) code_requirement_task = task (description = '단계별 요구 사항 쓰기. 문제 : {문제}', expect_output = '형식 요구 사항 텍스트.', 에이전트 = code_requirements_agent, human_input = true)
human_input=True
조정에 대한 사용자 입력이 가능합니다.
코드 평가
이 예제는 더 큰 컨텍스트를 더 잘 처리하기 위해 FileReadTool
및 gpt-4o
사용합니다.
file_read_tool = filereadtool ( 'eda.py') code_evaluator_agent = Agent (역할 = "데이터 과학 평가자", 목표 = '제공된 요구 사항에 따라 코드 평가', Backstory = "" "귀하는 주어진 요구 사항을 기반으로 코드를 검토하는 데이터 과학 평가자입니다." ", llm = 'gpt-4o', verbose = true) code_evaluator_task = task (description = "" "요구 사항에 따라 코드 파일을 평가합니다. 코드가 아닌 평가 만 제공합니다." ", expect_output = '요구 사항에 따른 세부 평가.', 도구 = [file_read_tool], 에이전트 = code_evaluator_agent)
평가 승무원 구축
승무원을 만들고 문제를 정의하십시오.
승무원 = 승무원 (agents = [code_requirements_agent, code_evaluator_agent], tasks = [code_requirement_task, code_evaluator_task], verbose = true) 문제 = "" "NYC 택시 여행 기간 데이터 세트에서 EDA를 수행합니다 ..." " # (데이터 세트 설명은 간결하게 생략 됨) result = crew.kickoff (입력 = { '문제': 문제})
산출
출력은 인간 입력 프롬프트를 보여줍니다.
작업 출력에 개별적으로 액세스 할 수 있습니다.
print (code_requirement_task.output.raw) print (result.raw)
결론
Crewai는 AI 중심 코드 생성, 검토 및 평가를 통해 소프트웨어 개발을 향상시키기위한 강력한 프레임 워크를 제공합니다. 역할, 목표 및 작업을 정의함으로써 개발자는 워크 플로를 간소화하고 생산성을 높일 수 있습니다. AI 쌍 프로그래머를 Crewai와 통합하면 효율성과 코드 품질이 향상됩니다. Crewai의 유연성은 원활한 AI 에이전트 협업을 용이하게하여 최적화, 유지 관리 및 오류가없는 코드를 초래합니다. AI가 발전함에 따라 Crewai의 쌍 프로그래밍 기능은 개발자에게 점점 더 가치가 있습니다.
자주 묻는 질문
Q1. Crewai 란 무엇이며 소프트웨어 개발에서의 역할은 무엇입니까? Crewai는 AI 에이전트 프레임 워크로서 개발자가 코드 작성, 검토 및 평가를 통해 생산성 향상을 지원합니다.
Q2. Crewai의 주요 구성 요소는 무엇입니까? 에이전트, 작업, 도구 및 승무원. 에이전트는 행동을 수행합니다. 작업은 목표를 정의합니다. 도구 확장 에이전트 기능; 승무원은 에이전트 협업을 가능하게합니다.
Q3. 코드 생성 AI 에이전트를 설정하는 방법은 무엇입니까? 에이전트의 역할, 목표, 백 스토리 및 LLM을 정의한 다음 문제를 지정하는 해당 작업 및 예상 출력을 만듭니다.
Q4. Crewai 에이전트가 협력 할 수 있습니까? 예, "승무원"을 통해 에이전트가 작업의 다른 측면을 효율적으로 처리 할 수 있도록합니다.
Q5. 어떤 도구를 사용할 수 있습니까? 다양한 도구는 파일 읽기, 웹 검색 및 코드 실행을 포함하여 에이전트 기능을 향상시킵니다.
위 내용은 Crewai -Analytics Vidhya와 함께 AI 쌍 프로그래머를 구축하십시오의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

이봐, 코딩 닌자! 하루 동안 어떤 코딩 관련 작업을 계획 했습니까? 이 블로그에 더 자세히 살펴보기 전에, 나는 당신이 당신의 모든 코딩 관련 문제에 대해 생각하기를 원합니다. 완료? - ’

소개 OpenAi는 기대가 많은 "Strawberry"아키텍처를 기반으로 새로운 모델을 출시했습니다. O1로 알려진이 혁신적인 모델은 추론 기능을 향상시켜 문제를 통해 생각할 수 있습니다.

소개 생생한 그림과 조각으로 둘러싸인 아트 갤러리를 걷는 것을 상상해보십시오. 이제 각 작품에 질문을하고 의미있는 대답을 얻을 수 있다면 어떨까요? “어떤 이야기를하고 있습니까?

SQL의 Alter Table 문 : 데이터베이스에 열을 동적으로 추가 데이터 관리에서 SQL의 적응성이 중요합니다. 데이터베이스 구조를 즉시 조정해야합니까? Alter Table 문은 솔루션입니다. 이 안내서는 Colu를 추가합니다

소개 Mistral은 최초의 멀티 모드 모델, 즉 Pixtral-12B-2409를 발표했습니다. 이 모델은 Mistral의 120 억 개의 매개 변수 인 NEMO 12B를 기반으로합니다. 이 모델을 차별화하는 것은 무엇입니까? 이제 이미지와 Tex를 모두 가져갈 수 있습니다

문제가있는 벤치 마크 : 라마 사례 연구 2025 년 4 월 초, Meta는 LLAMA 4 제품군을 공개하여 GPT-4O 및 Claude 3.5 Sonnet과 같은 경쟁자들에 대해 호의적으로 배치 한 인상적인 성능 지표를 자랑했습니다. Launc의 중심

에이전트 AI에서 작업하는 동안 개발자는 종종 속도, 유연성 및 자원 효율성 사이의 상충 관계를 탐색하는 것을 발견합니다. 나는 에이전트 AI 프레임 워크를 탐구하고 Agno를 만났다 (이전에는 ph-이었다.

비디오 게임이 불안을 완화하거나 집중하거나 ADHD를 가진 어린이를 지원할 수 있습니까? 건강 관리 도전이 전 세계적으로 급증함에 따라, 특히 청소년들 사이에서 혁신가들은 비디오 게임 인 가능성이없는 도구로 전환하고 있습니다. 이제 세계 최대의 엔터테인먼트 인더스 중 하나입니다
