Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Ultralytics Actions with OpenAI GPT-4 PR Summary #2187

Merged
merged 1 commit into from
Jan 28, 2024

Conversation

pderrenger
Copy link
Member

@pderrenger pderrenger commented Jan 28, 2024

This pull request adds an improved Ultralytics Actions workflow to automatically format code and documentation to the new Ultralytics official standards maintained at https://github.com/ultralytics/actions.

Six individual actions are run by default now including a new PR Summary utilizing OpenAI GPT-4. Disable individual actions by setting them to false or removing their line, i.e. delete 'markdown: true' line to disable markdown formatting.

Note that additional spellings have been added to the Ultralytics spelling dictionary and frontmatter is now ignored by markdown formatters per your feedback.

To customize an action use a pyproject.toml file in this repo. For details see https://github.com/ultralytics/actions.

# Ultralytics 🚀 - AGPL-3.0 license
# Ultralytics Actions https://github.com/ultralytics/actions
# This workflow automatically formats code and documentation in PRs to official Ultralytics standards

name: Ultralytics Actions

on:
  push:
    branches: [main,master]
  pull_request:
    branches: [main,master]

jobs:
  format:
    runs-on: ubuntu-latest
    steps:
      - name: Run Ultralytics Formatting
        uses: ultralytics/actions@main
        with:
          token: ${{ secrets.GITHUB_TOKEN }} # automatically generated, do not modify
          python: true # format Python code and docstrings
          markdown: true # format Markdown and YAML
          spelling: true # check spelling
          links: true # check broken links
          summary: true # print PR summary with GPT4 (requires 'openai_api_key' or 'openai_azure_api_key' and 'openai_azure_endpoint')
          openai_azure_api_key: ${{ secrets.OPENAI_AZURE_API_KEY }}
          openai_azure_endpoint: ${{ secrets.OPENAI_AZURE_ENDPOINT }}

🛠️ PR Summary

Made with ❤️ by Ultralytics Actions

🌟 Summary

Updating GitHub Actions formatting workflow for code quality assurance.

📊 Key Changes

  • Changed the event trigger from pull_request_target to pull_request to enhance security.
  • Added formatting checks for Python, Markdown, and YAML files.
  • Included spelling and broken link checks.
  • Introduced a feature to create a summary of PRs with GPT-4, requiring Azure OpenAI keys.

🎯 Purpose & Impact

  • 🛡️ Improves security by using the more restricted pull_request event trigger.
  • ✨ Ensures consistent code and documentation style, enhancing readability and maintainability.
  • 📝 Catches spelling mistakes and broken links, improving the project's professionalism.
  • 🤖 Offers AI-enhanced PR summaries, saving time for maintainers and contributors while providing more context.

👥 Users and developers can expect a cleaner, more robust code base and streamlined contribution process.

@glenn-jocher glenn-jocher changed the title Update Ultralytics Actions with OpenAI GPT-4 PR Summary Ultralytics Actions with OpenAI GPT-4 PR Summary Jan 28, 2024
@glenn-jocher glenn-jocher merged commit a046b1b into master Jan 28, 2024
9 checks passed
@glenn-jocher glenn-jocher deleted the update-format-workflow-20240128211317 branch January 28, 2024 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants