microsoft / gpt-review

MIT License
253 stars 48 forks source link

[Bug Report]: github action does not run due to incompatible python dependency #180

Open mbaneryd opened 1 year ago

mbaneryd commented 1 year ago

Module path

gpt github review

review-gpt CLI version

0.9.4

Describe the bug

The workflow fails when running the Run source .env/bin/activate sub step in Run microsoft/gpt-review@v0.9.4 with this error

<module>
    info_str=example_info.json(indent=4),
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/.../.env/lib/python3.11/site-packages/typing_extensions.py", line 2562, in wrapper
    return __arg(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/.../.env/lib/python3.11/site-packages/pydantic/main.py", line 952, in json
Error:     raise TypeError('`dumps_kwargs` keyword arguments are no longer supported.')
TypeError: `dumps_kwargs` keyword arguments are no longer supported.
Error: Process completed with exit code 1.

To reproduce

Add this worklow to the repository

name: GPT Review on Pull Request

on:
  pull_request_target

jobs:
  add_pr_comment:
    runs-on: ubuntu-latest
    name: Azure OpenAI PR Comment
    steps:
      - id: review
        uses: microsoft/gpt-review@v0.9.4
        with:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
          AZURE_OPENAI_API: ${{ secrets.AZURE_OPENAI_API }}
          AZURE_OPENAI_API_KEY: ${{ secrets.AZURE_OPENAI_API_KEY }}

Code snippet

No response

Relevant log output

Collecting openapi-schema-pydantic<2.0,>=1.2 (from langchain>=0.0.154->llama-index<=0.6.9,>=0.6.0->gpt-review)
  Downloading openapi_schema_pydantic-1.2.4-py3-none-any.whl (90 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 90.0/90.0 kB 32.2 MB/s eta 0:00:00
Collecting pydantic<3,>=1 (from langchain>=0.0.154->llama-index<=0.6.9,>=0.6.0->gpt-review)
  Obtaining dependency information for pydantic<3,>=1 from https://files.pythonhosted.org/packages/82/54/ed9a1005c580b619a4c53c324f472c99c165051b22f8885b09be1882aece/pydantic-2.2.0-py3-none-any.whl.metadata
  Downloading pydantic-2.2.0-py3-none-any.whl.metadata (145 kB)
...

<module>
    info_str=example_info.json(indent=4),
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/.../.env/lib/python3.11/site-packages/typing_extensions.py", line 2562, in wrapper
    return __arg(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/.../.env/lib/python3.11/site-packages/pydantic/main.py", line 952, in json
Error:     raise TypeError('`dumps_kwargs` keyword arguments are no longer supported.')
TypeError: `dumps_kwargs` keyword arguments are no longer supported.
Error: Process completed with exit code 1.
BrendanWalsh commented 1 year ago

Looks like this is fixed with llama-index>=0.6.11. I confirmed that this repros with 0.9.4 but not the current head of main. @dciborow can you cut a new release?

nholloh commented 1 year ago

I switched to main but unfortunately it still does not work for me, same error.

Run microsoft/gpt-review@main
Run actions/checkout@v3

...

Run source .env/bin/activate
Traceback (most recent call last):
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/bin/gpt", line 5, in <module>
    from gpt_review.main import __main__
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/gpt_review/main.py", line 6, in <module>
    from gpt_review._gpt_cli import cli
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/gpt_review/_gpt_cli.py", line 9, in <module>
    from gpt_review._ask import AskCommandGroup
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/gpt_review/_ask.py", line 12, in <module>
    from gpt_review._llama_index import _query_index
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/gpt_review/_llama_index.py", line 10, in <module>
    from llama_index import (
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/__init__.py", line 31, in <module>
    from llama_index.indices.loading import (
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/indices/loading.py", line 4, in <module>
    from llama_index.indices.registry import INDEX_STRUCT_TYPE_TO_INDEX_CLASS
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/indices/registry.py", line 15, in <module>
    from llama_index.indices.vector_store.base import GPTVectorStoreIndex
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/indices/vector_store/__init__.py", line 4, in <module>
    from llama_index.indices.vector_store.retrievers import (
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/indices/vector_store/retrievers/__init__.py", line 2, in <module>
    from llama_index.indices.vector_store.retrievers.auto_retriever import (
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/indices/vector_store/retrievers/auto_retriever/__init__.py", line 1, in <module>
    from llama_index.indices.vector_store.retrievers.auto_retriever.auto_retriever import (
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/indices/vector_store/retrievers/auto_retriever/auto_retriever.py", line 14, in <module>
    from llama_index.indices.vector_store.retrievers.auto_retriever.prompts import (
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/llama_index/indices/vector_store/retrievers/auto_retriever/prompts.py", line 80, in <module>
    info_str=example_info.json(indent=4),
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/typing_extensions.py", line 2562, in wrapper
    return __arg(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^
  File "/home/runner/work/iOS-Pipeline-Demo/iOS-Pipeline-Demo/.env/lib/python3.11/site-packages/pydantic/main.py", line 960, in json
Error:     raise TypeError('`dumps_kwargs` keyword arguments are no longer supported.')
TypeError: `dumps_kwargs` keyword arguments are no longer supported.
Error: Process completed with exit code 1.
mbaneryd commented 1 year ago

I tried to upgrade to 0.9.5 but still run into the same problem. According to the logs llama_index-0.6.9 was downloaded

Collecting llama-index<=0.6.9,>=0.6.0 (from gpt-review)
  Obtaining dependency information for llama-index<=0.6.9,>=0.6.0 from https://files.pythonhosted.org/packages/40/9b/e66ecdb5589c5232b1f13d66be7beacca408115875c897a5f1fead371885/llama_index-0.6.9-py3-none-any.whl.metadata
  Downloading llama_index-0.6.9-py3-none-any.whl.metadata (4.5 kB)
BrendanWalsh commented 1 year ago

0.9.5 has been pushed now which seems to resolve this issue