成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

我讓代碼,學會了自動評審!提高80%的交付質量!

開發 前端
公司里其實也總有人做一些這樣的創新組件,這些東西和業務沒關系,也不是個人的KPI壓力,但往往做這樣的東西的伙伴就有更多的晉升資格和加薪待遇。

一、使用方法

本套組件是小傅哥基于 GitHub Actions + OpenAI(ChatGLM) + Git/GitHub + 公眾號模板消息 串聯出從代碼提交獲取通知,Git 檢出分支變化,在使用 OpenAI 進行代碼和寫入日志,再發送消息通知完成整個鏈路。

好,那接下來,小傅哥就帶著你做下 OpenAI Code Review 的配置,整體配置如下圖;—— 下面????會告訴你在哪配置。

圖片圖片

1. 申請 ChatGLM

  • CHATGLM_APIKEYSECRET:https://open.bigmodel.cn/usercenter/apikeys - 申請方便&還挺好用。也可以對接其他模型。
  • CHATGLM_APIHOST:https://open.bigmodel.cn/api/paas/v4/chat/completions

2. 申請 GitHub 倉庫

組件是基于 Github Actions 實現的,所以要提供一個你的 Github 工程庫和一個評審 Github 工程庫寫入日志的日志庫。如果你有其他代碼庫,也可以按照對應代碼庫的 CI/CD 標準進行實現。

  • 工程庫:https://github.com/xfg-studio-project/openai-code-review-test - 你創建一個自己的,并提交代碼。
  • 日志庫:https://github.com/xfg-studio-project/openai-code-review-log - 你創建一個自己的。

3. 申請 GitHub Token

地址:https://github.com/settings/tokens

圖片圖片

  • 創建后,保存生成的 Token,用于配置到 GitHub Actions 參數中

4. 微信公眾號配置

  • 申請地址 https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?actinotallow=showinfo&t=sandbox/index

圖片圖片

  • 這個測試公眾號等同于企業公眾號,有對應的模板消息。
  • 申請后,你就會獲得 appID、appsecret、tourse - 就是誰關注了公眾號,就會展示一個分配的微信號,推送模板消息就是給這個用戶推送。
  • 模板消息,自己新建一個。之后就獲得ID。消息格式如下;
項目:{{repo_name.DATA}} 分支:{{branch_name.DATA}} 作者:{{commit_author.DATA}} 說明:{{commit_message.DATA}}

5. GitHub Actions 配置

5.1 配置參數

地址:https://github.com/xfg-studio-project/openai-code-review-test/settings/secrets/actions - 換成你的項目工程,進入到 Setting -> Secrets and variables -> Actions -> Repository secrets -> New repository secret

圖片圖片

圖片圖片

Name

Secret

CHATGLM_APIHOST

https://open.bigmodel.cn/api/paas/v4/chat/completions

CHATGLM_APIKEYSECRET

39580e34e175019c230fdd519817b381.F*****pzqiRDcAk - 使用你的

CODE_REVIEW_LOG_URI

https://github.com/xfg-studio-project/openai-code-review-log - 使用你的

CODE_TOKEN

ghp_KWBsnzwoQR4OXO4o3XjIJjVU****GsS1 - 使用你的

WEIXIN_APPID

wx5a228ff69e2****1f - 使用你的

WEIXIN_SECRET

0bea03aa1310bac050a******8703928 - 使用你的

WEIXIN_TEMPLATE_ID

l2HTkntHB71R4NQTW77UkcqvSOIFqE_bss1DAVQSybc  - 使用你的

WEIXIN_TOUSER

or0Ab6ivwmypESVp_bYuk92T**** - 使用你的

5.2 配置腳本

圖片圖片

name: OpenAiCodeReview

on:
  push:
    branches:
      - '*'
  pull_request:
    branches:
      - '*'

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - name: Checkout repository
        uses: actions/checkout@v2
        with:
          fetch-depth: 2  # 檢出最后兩個提交,以便可以比較 HEAD~1 和 HEAD

      - name: Set up JDK 11
        uses: actions/setup-java@v2
        with:
          distribution: 'adopt'
          java-version: '11'

      - name: Create libs directory
        run: mkdir -p ./libs

      - name: Download openai-code-review-sdk JAR
        run: wget -O ./libs/openai-code-review-sdk-1.1.jar https://github.com/xfg-studio-project/openai-code-review-log/releases/download/v1.1/openai-code-review-sdk-1.1.jar

      - name: Get repository name
        id: repo-name
        run: echo "REPO_NAME=${GITHUB_REPOSITORY##*/}" >> $GITHUB_ENV

      - name: Get branch name
        id: branch-name
        run: echo "BRANCH_NAME=${GITHUB_REF#refs/heads/}" >> $GITHUB_ENV

      - name: Get commit author
        id: commit-author
        run: echo "COMMIT_AUTHOR=$(git log -1 --pretty=format:'%an <%ae>')" >> $GITHUB_ENV

      - name: Get commit message
        id: commit-message
        run: echo "COMMIT_MESSAGE=$(git log -1 --pretty=format:'%s')" >> $GITHUB_ENV

      - name: Print repository, branch name, commit author, and commit message
        run: |
          echo "Repository name is ${{ env.REPO_NAME }}"
          echo "Branch name is ${{ env.BRANCH_NAME }}"
          echo "Commit author is ${{ env.COMMIT_AUTHOR }}"
          echo "Commit message is ${{ env.COMMIT_MESSAGE }}"

      - name: Run Code Review
        run: java -jar ./libs/openai-code-review-sdk-1.1.jar
        env:
          # Github 配置;GITHUB_REVIEW_LOG_URI「https://github.com/xfg-studio-project/openai-code-review-log」、GITHUB_TOKEN「https://github.com/settings/tokens」
          GITHUB_REVIEW_LOG_URI: ${{ secrets.CODE_REVIEW_LOG_URI }}
          GITHUB_TOKEN: ${{ secrets.CODE_TOKEN }}
          COMMIT_PROJECT: ${{ env.REPO_NAME }}
          COMMIT_BRANCH: ${{ env.BRANCH_NAME }}
          COMMIT_AUTHOR: ${{ env.COMMIT_AUTHOR }}
          COMMIT_MESSAGE: ${{ env.COMMIT_MESSAGE }}
          # 微信配置 「https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?actinotallow=showinfo&t=sandbox/index」
          WEIXIN_APPID: ${{ secrets.WEIXIN_APPID }}
          WEIXIN_SECRET: ${{ secrets.WEIXIN_SECRET }}
          WEIXIN_TOUSER: ${{ secrets.WEIXIN_TOUSER }}
          WEIXIN_TEMPLATE_ID: ${{ secrets.WEIXIN_TEMPLATE_ID }}
          # OpenAi - ChatGLM 配置「https://open.bigmodel.cn/api/paas/v4/chat/completions」、「https://open.bigmodel.cn/usercenter/apikeys」
          CHATGLM_APIHOST: ${{ secrets.CHATGLM_APIHOST }}
          CHATGLM_APIKEYSECRET: ${{ secrets.CHATGLM_APIKEYSECRET }}
  • 把以上腳本粘貼到你的 GitHub Actions 中,之后保存。
  • 接下來你提交代碼就會自動觸發代碼評審啦。?? 趕緊玩一下吧!看看智能的AI評審能力!

對于這里實現的內容,小傅哥會通過代碼實踐課程,手把手的給你講解。從方案設計、代碼串聯、重構編碼,一步步的帶著你全部搞懂!

二、能學到啥

公司里其實也總有人做一些這樣的創新組件,這些東西和業務沒關系,也不是個人的KPI壓力,但往往做這樣的東西的伙伴就有更多的晉升資格和加薪待遇。因為我就是這個人 哈哈哈 死鬼!

這樣的組件項目,本身就是一種技術創新應用來解決實際業務問題,提高交付質量。而不是那種野蠻的一遍遍重寫RPC框架。所以學習一套這樣的東西是非常有用的。那么在這套東西你可以學習到;

  • 一整套的設計方案分析和相應的技術問題處理手段,這個思考方式很重要。
  • GitHub Actions 的使用機制,它的一些超級強大的用途和使用方式。
  • OpenAI ChatGLM 對接使用,用AI來做代碼評審。
  • 微信公眾號的模板配置和API對接使用,運用 API 完成消息觸達。
  • 通過代碼完成 Git 命令使用,檢出代碼分支,在通過 OPenAI 完成代碼評審。整個過程先使用大家常用的流水賬方式開發代碼,再帶著大家重構設計,讓代碼變得更加清晰。
  • 打包 Jar 包,并把相關的組件一起打包,之后讓 GitHub Actions 分別通過 Main 函數調用、mvn 構建使用、Jar 下載使用,多種方式學習整個過程(而不是只最終的結果,過程非常重要)。
責任編輯:武曉燕 來源: bugstack蟲洞棧
相關推薦

2020-03-30 08:00:38

Nginx徹底搞懂

2022-08-04 09:01:45

TypeScriptMicrosoft

2023-01-06 18:31:46

準確命名

2024-05-29 07:47:30

SpringJava@Resource

2022-08-29 08:05:44

Go類型JSON

2023-09-07 15:16:06

軟件開發測試

2012-04-09 15:40:31

PHP

2016-02-24 16:03:34

代碼質量編寫函數

2016-02-23 11:03:03

代碼質量編寫函數

2009-06-03 15:31:40

Eclipse插件提高代碼質量

2022-11-08 08:45:30

Prettier代碼格式化工具

2022-01-17 07:50:37

Go代碼規范

2012-07-30 13:15:18

代碼

2015-07-15 10:27:48

Android代碼質量工具

2021-04-16 09:57:17

AI 數據人工智能

2012-11-07 09:48:26

2022-09-08 08:03:30

RocketMQ線程技巧

2015-08-11 09:39:25

重構提高代碼質量

2023-03-10 22:08:20

2010-05-20 09:07:30

jQuery
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品二区视频 | 久久天天| 婷婷综合网 | 欧洲精品视频一区 | 国产精品一级 | 一区二区视频免费观看 | 亚洲免费观看视频网站 | av中文字幕网 | 精品国产一区二区三区免费 | 999www视频免费观看 | 精品国产99| 国产91在线播放精品91 | 色婷婷综合网站 | 羞羞视频网站免费观看 | 中文字幕一区二区三区在线视频 | 日韩精品一区二区三区在线播放 | 人人人人爽 | 久久伊人精品一区二区三区 | av影音资源| 精品欧美一区二区精品久久久 | 一区二区三区国产 | 精品1区2区 | 欧美日韩亚 | 51ⅴ精品国产91久久久久久 | 日韩小视频 | 成人影院在线观看 | 国产日韩欧美 | 亚洲日韩中文字幕一区 | 97成人免费 | 国产一区二区三区在线观看免费 | 羞羞视频免费在线观看 | 国产精品一区二 | 午夜极品 | 九九热免费在线观看 | 日韩在线免费观看视频 | 国产欧美在线一区二区 | 欧美日韩国产一区二区三区 | 久久久国产一区二区三区 | 网站一区二区三区 | 精品久久伊人 | 中文字幕亚洲区一区二 |