GitLab - การทำงานอัตโนมัติในการตรวจสอบโค้ดด้วย GenAI

1. ภาพรวม

ในแล็บนี้ คุณจะได้ตั้งค่าไปป์ไลน์ GitLab CICD และผสานรวมเข้ากับ Gemini เพื่อปรับขั้นตอนการตรวจสอบโค้ดให้เป็นระบบอัตโนมัติ

e6923862de67e3f5.png

สิ่งที่คุณจะได้เรียนรู้

ในแล็บนี้ คุณจะได้เรียนรู้วิธีการต่อไปนี้

  • วิธีเพิ่มขั้นตอนการตรวจสอบโค้ดอัตโนมัติด้วย GenAI ใน GitLab
  • วิธีเรียกใช้ devai cli ในเครื่องเพื่อตรวจสอบโค้ดโดยอัตโนมัติ

ข้อกำหนดเบื้องต้น

  • แล็บนี้ถือว่าคุณคุ้นเคยกับสภาพแวดล้อม Cloud Console และ Cloud Shell

2. การตั้งค่าและข้อกำหนด

การตั้งค่าโปรเจ็กต์ Cloud

  1. ลงชื่อเข้าใช้ คอนโซล Google Cloud และสร้างโปรเจ็กต์ใหม่หรือใช้โปรเจ็กต์ที่มีอยู่ หากยังไม่มีบัญชี Gmail หรือ Google Workspace คุณต้อง สร้างบัญชี

fbef9caa1602edd0.png

a99b7ace416376c4.png

5e3ff691252acf41.png

  • ชื่อโปรเจ็กต์ คือชื่อที่แสดงสำหรับผู้เข้าร่วมโปรเจ็กต์นี้ ซึ่งเป็นสตริงอักขระที่ Google APIs ไม่ได้ใช้ คุณอัปเดตชื่อนี้ได้ทุกเมื่อ
  • รหัสโปรเจ็กต์ ไม่ซ้ำกันในโปรเจ็กต์ Google Cloud ทั้งหมดและเปลี่ยนแปลงไม่ได้ (เปลี่ยนไม่ได้หลังจากตั้งค่าแล้ว) Cloud Console จะสร้างสตริงที่ไม่ซ้ำกันโดยอัตโนมัติ ซึ่งโดยปกติแล้วคุณไม่จำเป็นต้องสนใจว่าสตริงนั้นคืออะไร ใน Codelab ส่วนใหญ่ คุณจะต้องอ้างอิงรหัสโปรเจ็กต์ (โดยทั่วไปจะระบุเป็น PROJECT_ID) หากไม่ชอบรหัสที่สร้างขึ้น คุณอาจสร้างรหัสแบบสุ่มอีกรหัสหนึ่ง หรือจะลองสร้างรหัสของคุณเองและดูว่ารหัสนั้นใช้ได้หรือไม่ก็ได้ หลังจากขั้นตอนนี้แล้ว คุณจะเปลี่ยนรหัสไม่ได้และรหัสจะคงอยู่ตลอดระยะเวลาของโปรเจ็กต์
  • โปรดทราบว่ามีค่าที่ 3 คือหมายเลขโปรเจ็กต์ ซึ่ง API บางรายการใช้ ดูข้อมูลเพิ่มเติมเกี่ยวกับค่าทั้ง 3 นี้ได้ใน เอกสารประกอบ
  1. จากนั้นคุณจะต้อง เปิดใช้การเรียกเก็บเงิน ใน Cloud Console เพื่อใช้ทรัพยากร/API ของ Cloud การทำตาม Codelab นี้จะไม่เสียค่าใช้จ่ายมากนักหรืออาจไม่เสียค่าใช้จ่ายเลย หากต้องการปิดทรัพยากรเพื่อหลีกเลี่ยงการเรียกเก็บเงินนอกเหนือจากบทแนะนำนี้ คุณสามารถลบทรัพยากรที่สร้างขึ้นหรือลบโปรเจ็กต์ได้ ผู้ใช้ Google Cloud รายใหม่มีสิทธิ์เข้าร่วมโปรแกรม ช่วงทดลองใช้ฟรีมูลค่า$300 USD

การตั้งค่าสภาพแวดล้อม

เปิดแชทกับ Gemini

bc3c899ac8bcf488.png

หรือพิมพ์ "ขอความช่วยเหลือจาก Gemini" ในแถบค้นหา

e1e9ad314691368a.png

เปิดใช้ Gemini สำหรับ Google Cloud API โดยทำดังนี้

990a0ceea7d05531.png

คลิก "Start chatting" แล้วทำตามคำถามตัวอย่างข้อใดข้อหนึ่งหรือพิมพ์พรอมต์ของคุณเองเพื่อลองใช้

ed120d672468b412.png

พรอมต์ให้ลองใช้

  • อธิบาย Cloud Run เป็น 5 ประเด็นสำคัญ
  • คุณเป็นผู้จัดการผลิตภัณฑ์ Google Cloud Run โปรดอธิบาย Cloud Run ให้แก่นักเรียนเป็น 5 ประเด็นสำคัญสั้นๆ
  • คุณเป็นผู้จัดการผลิตภัณฑ์ Google Cloud Run โปรดอธิบาย Cloud Run ให้แก่นักพัฒนา Kubernetes ที่ผ่านการรับรองเป็น 5 ประเด็นสำคัญสั้นๆ
  • คุณเป็นผู้จัดการผลิตภัณฑ์ Google Cloud Run โปรดอธิบายให้แก่นักพัฒนาระดับสูงเป็น 5 ประเด็นสำคัญสั้นๆ ว่าคุณจะใช้ Cloud Run เทียบกับ GKE เมื่อใด

ดู คู่มือการใช้พรอมต์ เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการเขียนพรอมต์ที่ดีขึ้น

วิธีที่ Gemini สำหรับ Google Cloud ใช้ข้อมูลของคุณ

ความมุ่งมั่นของ Google ในการปกป้องความเป็นส่วนตัว

Google เป็นหนึ่งในบริษัทแรกๆ ในอุตสาหกรรมที่เผยแพร่ความมุ่งมั่นในการปกป้องความเป็นส่วนตัวของ AI/ML ซึ่งระบุความเชื่อของเราว่าลูกค้าควรได้รับการรักษาความปลอดภัยและการควบคุมข้อมูลในระดับสูงสุดที่จัดเก็บไว้ในระบบคลาวด์

ข้อมูลที่คุณส่งและรับ

คำถามที่คุณขอความช่วยเหลือจาก Gemini รวมถึงข้อมูลอินพุตหรือโค้ดที่คุณส่งไปยัง Gemini เพื่อวิเคราะห์หรือทำให้เสร็จสมบูรณ์เรียกว่าพรอมต์ คำตอบหรือการเติมโค้ดให้สมบูรณ์ที่คุณได้รับจาก Gemini เรียกว่าการตอบกลับ Gemini จะไม่ใช้พรอมต์หรือการตอบกลับเป็นข้อมูลเพื่อฝึกโมเดล

การเข้ารหัสพรอมต์

เมื่อคุณส่งพรอมต์ไปยัง Gemini ระบบจะเข้ารหัสข้อมูลของคุณ ขณะรับส่งข้อมูลเพื่อใช้เป็นอินพุตสำหรับโมเดลพื้นฐานใน Gemini

ข้อมูลโปรแกรมที่สร้างจาก Gemini

Gemini ได้รับการฝึกด้วยโค้ด Google Cloud ของบุคคลที่หนึ่ง รวมถึงโค้ดของบุคคลที่สามที่เลือก คุณมีหน้าที่รับผิดชอบต่อความปลอดภัย การทดสอบ และประสิทธิภาพของโค้ด รวมถึงการเติมโค้ดให้สมบูรณ์ การสร้าง หรือการวิเคราะห์ที่ Gemini เสนอให้คุณ

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีที่ Google จัดการพรอมต์ของคุณ

3. ตัวเลือกในการทดสอบพรอมต์

หากต้องการเปลี่ยน/ขยายพรอมต์ devai cli ที่มีอยู่ คุณสามารถทำได้หลายวิธี

Vertex AI Studio เป็นส่วนหนึ่งของแพลตฟอร์ม Vertex AI ของ Google Cloud ซึ่งออกแบบมาโดยเฉพาะเพื่อลดความซับซ้อนและเร่งการพัฒนาและการใช้โมเดล Generative AI

Google AI Studio เป็นเครื่องมือบนเว็บสำหรับการสร้างต้นแบบและการทดลองใช้การสร้างพรอมต์และ Gemini API

เว็บแอป Gemini (gemini.google.com) เป็นเครื่องมือบนเว็บที่ออกแบบมาเพื่อช่วยให้คุณสำรวจและใช้ประโยชน์จากความสามารถของโมเดล AI จาก Gemini ของ Google

4. สร้างบัญชีบริการ

เปิดใช้งาน Cloud Shell โดยคลิกไอคอนทางด้านขวาของแถบค้นหา

3e0c761ca41f315e.png

ในเทอร์มินัลที่เปิดขึ้น ให้เปิดใช้บริการที่จำเป็นเพื่อใช้ Vertex AI APIs และแชทกับ Gemini

gcloud services enable \
    aiplatform.googleapis.com \
    cloudaicompanion.googleapis.com \
    cloudresourcemanager.googleapis.com \
    secretmanager.googleapis.com

หากระบบแจ้งให้ให้สิทธิ์ ให้คลิก "ให้สิทธิ์" เพื่อดำเนินการต่อ

6356559df3eccdda.png

เรียกใช้คำสั่งต่อไปนี้เพื่อสร้างบัญชีบริการและคีย์ใหม่

คุณจะใช้บัญชีบริการนี้เพื่อเรียกใช้ API ไปยัง Vertex AI Gemini API จากไปป์ไลน์ CICD

PROJECT_ID=$(gcloud config get-value project)
SERVICE_ACCOUNT_NAME='vertex-client'
DISPLAY_NAME='Vertex Client'
KEY_FILE_NAME='vertex-client-key'

gcloud iam service-accounts create $SERVICE_ACCOUNT_NAME --display-name "$DISPLAY_NAME"

ให้สิทธิ์บทบาท

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/aiplatform.admin" --condition None

gcloud projects add-iam-policy-binding $PROJECT_ID --member="serviceAccount:$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com" --role="roles/secretmanager.secretAccessor" --condition None

gcloud iam service-accounts keys create $KEY_FILE_NAME.json --iam-account=$SERVICE_ACCOUNT_NAME@$PROJECT_ID.iam.gserviceaccount.com

5. นำเข้าที่เก็บ GitHub ไปยังที่เก็บ GitLab

ไปที่ https://gitlab.com/projects/new แล้วเลือกตัวเลือก "Import project" / "Repository by URL"

URL ที่เก็บ Git

https://github.com/GoogleCloudPlatform/genai-for-developers.git

ในส่วน URL ของโปรเจ็กต์ ให้เลือกรหัสผู้ใช้ GitLab

ตั้งค่าระดับการมองเห็นเป็น Public

คลิก "Create Project" เพื่อเริ่มกระบวนการนำเข้า

หากเห็นข้อผิดพลาดเกี่ยวกับ URL ที่เก็บ GitHub ไม่ถูกต้อง ให้ สร้างโทเค็น GitHub ใหม่(แบบละเอียด) ที่มีสิทธิ์เข้าถึงแบบอ่านอย่างเดียวสำหรับที่เก็บสาธารณะ แล้วลองนำเข้าอีกครั้งโดยระบุรหัสผู้ใช้และโทเค็น GitHub

6. เพิ่มตัวแปรไปป์ไลน์ GitLab CICD

จากนั้นคุณจะเปิดใช้ไปป์ไลน์ GitLab CICD เพื่อตรวจสอบโค้ดเมื่อมีการพุชการเปลี่ยนแปลงไปยังที่เก็บ

เปิดที่เก็บ GitLab ในเบราว์เซอร์แล้วไปที่ส่วน "Settings / CICD"

ขยายส่วน Variables แล้วคลิก "Add variable"

อย่าลืมยกเลิกการเลือกช่องทำเครื่องหมายทั้งหมดเมื่อเพิ่มตัวแปรใหม่

ตัวอย่าง

5644cec84e7303c3.png

เพิ่มตัวแปร 3 รายการดังนี้

  • PROJECT_ID - รหัสโปรเจ็กต์ Qwiklabs
  • LOCATION - us-central1
  • GOOGLE_CLOUD_CREDENTIALS

สำหรับค่าตัวแปร GOOGLE_CLOUD_CREDENTIALS ให้ใช้คีย์บัญชีบริการที่สร้างขึ้นในส่วนด้านบน เรียกใช้คำสั่งนี้ใน Google Cloud Shell แล้วคัดลอก/วางค่า

cat ~/vertex-client-key.json

มุมมองตัวแปร CI/CD

2f4594ce72be4834.png

7. เรียกใช้ไปป์ไลน์ GitLab CICD

เปิด "Build / Pipelines" ใน UI ของ GitLab แล้วคลิก "Run Pipeline"

a7518e37dde42366.png

8. ตรวจสอบเอาต์พุตไปป์ไลน์ GitLab

เปิด "Build / Jobs" ใน UI ของ GitLab แล้วตรวจสอบเอาต์พุตไปป์ไลน์

985e4b322fb73b1c.png

ภาพรวมคำสั่งไปป์ไลน์

การกำหนดค่าไปป์ไลน์ GitLab: .gitlab-ci.yml

คำสั่งการครอบคลุมการทดสอบ:

devai review testcoverage -c ./sample-app/src

คำสั่ง devai review testcoverage นี้จะวิเคราะห์โค้ดและชุดการทดสอบที่เกี่ยวข้อง (หากมี) โดยใช้โมเดล Generative AI, Gemini คำสั่งนี้จะประเมินการครอบคลุมการทดสอบของโค้ดที่ให้มา โดยระบุไฟล์และเมธอดที่มีและไม่มีการทดสอบหน่วย จากนั้นคำสั่งจะใช้ประโยชน์จากโมเดลเพื่อสรุปการครอบคลุม รวมถึงเมตริก เช่น บรรทัดและกิ่ง/เงื่อนไขที่ครอบคลุม ตามการวิเคราะห์ คำสั่งนี้จะให้คำแนะนำในการปรับปรุงการครอบคลุมการทดสอบ โดยแนะนำการทดสอบเฉพาะที่จะเพิ่มและให้คำแนะนำทั่วไปเกี่ยวกับแนวทางปฏิบัติแนะนำในการทดสอบ สุดท้าย คำสั่งจะแสดงผลการตอบกลับของโมเดล Gemini ซึ่งรวมถึงรายละเอียดต่างๆ เช่น ไฟล์ที่ไม่มีการครอบคลุม และคำแนะนำในการปรับปรุงการทดสอบที่มีอยู่ให้แก่ผู้ใช้ผ่านบรรทัดคำสั่ง

คำสั่งการตรวจสอบโค้ด:

devai review code -c ./sample-app/src/main/java/anthos/samples/bankofanthos/balancereader

คำสั่ง devai review code จะทำการตรวจสอบโค้ดอย่างละเอียดของข้อมูลโค้ดที่ให้มาโดยใช้โมเดล Generative AI คำสั่งนี้จะใช้โค้ดที่จะตรวจสอบเป็นอินพุต (บริบท) และกำหนดรูปแบบเอาต์พุตที่ต้องการ (เอาต์พุต) คำสั่งนี้ใช้ประโยชน์จากโมเดลภาษาขนาดใหญ่เพื่อวิเคราะห์โค้ดในด้านความถูกต้อง ประสิทธิภาพ ความสามารถในการบำรุงรักษา ความปลอดภัย และการปฏิบัติตามแนวทางปฏิบัติแนะนำ คำสั่งนี้จะสร้างพรอมต์แบบละเอียดเพื่อสั่งให้ Gemini ทำการตรวจสอบ แล้วส่งพรอมต์ไปยังโมเดลเพื่อประเมินโค้ดที่ให้มา สุดท้าย คำสั่งจะประมวลผลการตอบกลับของ Gemini โดยจัดรูปแบบเป็นมาร์กดาวน์, JSON หรือตารางตามที่ผู้ใช้ต้องการ แล้วแสดงผลการตรวจสอบ

คำสั่งการตรวจสอบการปฏิบัติตามนโยบาย:

devai review compliance --context ./sample-app/k8s --config ./devai-cli/gemini/styleguide.md

คำสั่ง devai review compliance จะวิเคราะห์โค้ดเทียบกับชุดแนวทางปฏิบัติแนะนำ ซึ่งโดยทั่วไปแล้วจะใช้สำหรับการกำหนดค่า Kubernetes คำสั่งนี้ใช้โมเดล Gemini เพื่อตรวจสอบโค้ดที่ให้มา (context) และเปรียบเทียบกับมาตรฐานที่ระบุไว้ซึ่งกำหนดไว้ในไฟล์การกำหนดค่าแยกต่างหาก (config) คำสั่งนี้ใช้ประโยชน์จากพรอมต์เพื่อสั่งให้โมเดล Gemini ทำหน้าที่เป็นวิศวกร Kubernetes ผู้เชี่ยวชาญและให้รายงานการปฏิบัติตามนโยบาย จากนั้นคำสั่งจะจัดรูปแบบผลลัพธ์เป็นคำอธิบายสั้นๆ โดยเน้นที่ตัวอย่างโค้ดที่แสดงวิธีแก้ไขปัญหาที่ระบุ สุดท้าย คำสั่งจะพิมพ์เอาต์พุตการตรวจสอบการปฏิบัติตามนโยบายของ Gemini ไปยังคอนโซล ซึ่งช่วยให้ผู้ใช้ตรวจสอบโค้ดของตนเองเพื่อดูการปฏิบัติตามนโยบายได้อย่างง่ายดาย

9. โคลนที่เก็บ GitLab

กลับไปที่เทอร์มินัล Google Cloud Shell แล้วโคลนที่เก็บ

cd ~
mkdir gitlab
cd gitlab

แทนที่ด้วยรหัสผู้ใช้ GitLab และ URL ที่เก็บที่สร้างขึ้น

git clone https://gitlab.com:YOUR_GITLAB_USERID/genai-for-developers.git

เปลี่ยนไดเรกทอรีแล้วเปิดไฟล์ .gitlab-ci.yml หากคุณเปลี่ยนชื่อที่เก็บระหว่างการนำเข้า ให้อัปเดตชื่อโฟลเดอร์ก่อนเรียกใช้คำสั่งต่อไปนี้

cd genai-for-developers

cloudshell edit .gitlab-ci.yml

10. อธิบายโค้ดด้วย Gemini Code Assist

คลิกขวาที่ใดก็ได้ในไฟล์ .gitlab-ci.yml แล้วเลือก Gemini Code Assist > Explain

f112229bcb52f48a.png

ตรวจสอบคำอธิบาย

b07fb4cdf803c141.png

11. การพัฒนา DevAI CLI

ในส่วนนี้ คุณจะทำการเปลี่ยนแปลง devai cli

เริ่มต้นด้วยการตั้งค่า Python Virtualenv, ติดตั้งข้อกำหนด และเรียกใช้คำสั่งตัวอย่าง

cd ~/gitlab/genai-for-developers/devai-cli
python3 -m venv venv
. venv/bin/activate
pip3 install -r src/requirements.txt
pip3 install --editable ./src
devai echo

ตั้งค่าตัวแปรสภาพแวดล้อมที่จำเป็น

export PROJECT_ID=$(gcloud config get-value project)
export LOCATION=us-central1

เรียกใช้คำสั่งการตรวจสอบโค้ดเพื่อตรวจสอบว่าทุกอย่างทำงานได้ดี

devai review code -c ~/gitlab/genai-for-developers/sample-app/src/main/java/anthos/samples/bankofanthos/balancereader > code-review.md

cloudshell edit code-review.md

ตรวจสอบผลลัพธ์โดยใช้การแสดงตัวอย่างมาร์กดาวน์ในตัวแก้ไข Cloud Shell

ใช้ Command Palette แล้วเลือก "Markdown: Open Preview"

9587123b62f12a55.png

9999e7fbb20cf251.png

9a12ba6ee8b3eedd.png

12. สำรวจคำสั่ง devai cli

คำสั่งการตรวจสอบการครอบคลุมการทดสอบ

devai review testcoverage -c ~/genai-for-developers/sample-app/src > testcoverage.md

cloudshell edit testcoverage.md

คำสั่งการตรวจสอบการปฏิบัติตามนโยบาย

devai review compliance --context ~/genai-for-developers/sample-app/k8s --config ~/genai-for-developers/devai-cli/.gemini/styleguide.md > k8s-review.md

cloudshell edit k8s-review.md

คำสั่งการตรวจสอบประสิทธิภาพ

devai review performance -c ~/genai-for-developers/sample-app/src/main/java > performance-review.md

cloudshell edit performance-review.md

คำสั่งการตรวจสอบความปลอดภัย

devai review security -c ~/genai-for-developers/sample-app/src/main/java > security-review.md

cloudshell edit security-review.md

คำสั่งการตรวจสอบตัวบล็อก

devai review blockers -c ~/gitlab/genai-for-developers/sample-app/pom.xml
devai review blockers -c ~/gitlab/genai-for-developers/sample-app/setup.md

การตรวจสอบและการสรุปรูปภาพ/ไดอะแกรม

แผนภาพอินพุต[~/genai-for-developers/images/extension-diagram.png]

4b109a74e1aa3fb6.png

คำสั่งการตรวจสอบ

devai review image \
  -f ~/genai-for-developers/images/extension-diagram.png \
  -p "Review and summarize this diagram" > image-review.md

cloudshell edit image-review.md

เอาต์พุต

The diagram outlines a process for conducting local code reviews using a VS Code extension or CLI, leveraging Google Cloud's Vertex AI (Gemini Pro) for generating review prompts. 

**Process Flow:**

1. **Code Style Check:** Developers initiate the process by checking their code for adherence to pre-defined style guidelines.
2. **Prompt Generation:** The VS Code extension/CLI sends the code to Vertex AI (Gemini Pro) on Google Cloud. 
3. **Vertex AI Review:**  Vertex AI analyzes the code and generates relevant review prompts.
4. **Local Review:** The prompts are sent back to the developer's IDE for their consideration.
5. **Optional Actions:** Developers can optionally: 
    - Create new JIRA issues directly from the IDE based on the review prompts.
    - Generate new issues in a GitLab repository.

**Key Components:**

* **VS Code Extension/CLI:** Tools facilitating the interaction with Vertex AI and potential integrations with JIRA and GitLab.
* **Vertex AI (Gemini Pro):**  Google Cloud's generative AI service responsible for understanding the code and generating meaningful review prompts.
* **Google Cloud Secret Manager:** Securely stores API keys and access tokens required to authenticate and interact with Google Cloud services.
* **JIRA/GitLab (Optional):** Issue tracking and project management tools that can be integrated for a streamlined workflow.

**Benefits:**

* **Automated Review Assistance:**  Leveraging AI to generate review prompts saves time and improves the consistency and quality of code reviews. 
* **Local Development:** The process empowers developers to conduct reviews locally within their familiar IDE.
* **Integration Options:** The flexibility to integrate with project management tools like JIRA and GitLab streamlines workflow and issue tracking.

การวิเคราะห์ความแตกต่างของรูปภาพ

devai review imgdiff \
  -c ~/genai-for-developers/images/devai-api.png \
  -t ~/genai-for-developers/images/devai-api-slack.png > image-diff-review.md

 cloudshell edit image-diff-review.md

เอาต์พุต

The following UI elements are missing in the "AFTER UPGRADE STATE" image compared to the "BEFORE UPGRADE STATE" image:

1. **Slack:** The entire Slack element, including the icon, "Team channel" label, and the arrow indicating interaction, is absent in the AFTER UPGRADE image. 
2. **Storage Bucket:**  The "Storage Bucket" element with its icon and "PDFs" label is missing in the AFTER UPGRADE image. 
3. **"GenAI Agents" label in Vertex AI block:** The BEFORE UPGRADE image has "Vertex AI Agents" and "GenAI Agent" labels within the Vertex AI block, while the AFTER UPGRADE image only has "Vertex AI."
4. **"Open JIRA Issue" and "Team Project" labels:** In the BEFORE UPGRADE image, these labels are connected to the JIRA block with an arrow. These are missing in the AFTER UPGRADE image.

**Decision Explanation:**

The analysis is based on a direct visual comparison of the two provided images, noting the presence and absence of specific UI elements and their associated labels. The elements listed above are present in the BEFORE UPGRADE image but absent in the AFTER UPGRADE image.

การวิเคราะห์ไฟล์วิดีโอ

devai review video \
  -f "/tmp/video.mp4" \
  -p "Review user journey video and create unit tests using jest framework"

คำสั่งการสร้างเอกสารประกอบ

devai document readme -c ~/gitlab/genai-for-developers/sample-app/src/main/

เอาต์พุต

# Bank of Anthos - Balance Reader Service

## Description

The Balance Reader service is a component of the Bank of Anthos sample application. It provides a REST endpoint for retrieving the current balance of a user account. This service demonstrates key concepts for building microservices with Spring Boot and deploying them to a Kubernetes cluster.

## Features

- Securely retrieves account balances using JWT authentication.
- Leverages a local cache for fast balance retrieval.
- Asynchronously processes transactions from a central ledger.
- Provides health check endpoints for Kubernetes liveness and readiness probes.
...

ตรวจสอบคำสั่ง devai CLI ที่ใช้ได้ในตัวแก้ไข Cloud Shell

cloudshell edit ~/gitlab/genai-for-developers/devai-cli/README.md

หรือตรวจสอบ README.md ในที่เก็บ GitHub

13. ยินดีด้วย

ยินดีด้วย คุณทำ Codelab นี้เสร็จแล้ว

สิ่งที่เราได้พูดถึงไปแล้ว

  • การเพิ่มขั้นตอนการตรวจสอบโค้ดอัตโนมัติด้วย GenAI ใน GitLab
  • การเรียกใช้ devai cli ในเครื่อง

ขั้นตอนต่อไปที่ทำได้

  • พบกับเซสชันภาคปฏิบัติอื่นๆ เร็วๆ นี้

ล้างข้อมูล

หากต้องการหลีกเลี่ยงการเรียกเก็บเงินกับบัญชี Google Cloud สำหรับทรัพยากรที่ใช้ในบทแนะนำนี้ ให้ลบโปรเจ็กต์ที่มีทรัพยากร หรือเก็บโปรเจ็กต์ไว้และลบทรัพยากรแต่ละรายการ

การลบโปรเจ็กต์

วิธีที่ง่ายที่สุดในการยกเลิกการเรียกเก็บเงินคือการลบโปรเจ็กต์ที่คุณสร้างขึ้นสำหรับบทแนะนำ

©2024 Google LLC สงวนสิทธิ์ทั้งหมด Google และโลโก้ของ Google เป็นเครื่องหมายการค้าของ Google LLC ชื่อบริษัทและผลิตภัณฑ์อื่นๆ ทั้งหมดอาจเป็นเครื่องหมายการค้าของบริษัทที่เป็นเจ้าของ