AutoGen cache using Azure Cosmos DB #3956
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will install Python dependencies, run tests and lint with a variety of Python versions | ||
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions | ||
name: ContribTests | ||
on: | ||
pull_request: | ||
branches: ["main"] | ||
paths: | ||
- "autogen/**" | ||
- "test/agentchat/contrib/**" | ||
- ".github/workflows/contrib-tests.yml" | ||
- "setup.py" | ||
concurrency: | ||
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.head_ref }} | ||
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | ||
permissions: | ||
{} | ||
# actions: read | ||
# checks: read | ||
# contents: read | ||
# deployments: read | ||
jobs: | ||
RetrieveChatTest: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.9", "3.10", "3.11"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install qdrant_client when python-version is 3.10 | ||
if: matrix.python-version == '3.10' | ||
run: | | ||
pip install .[retrievechat-qdrant] | ||
- name: Install unstructured when python-version is 3.9 and on linux | ||
run: | | ||
sudo apt-get update | ||
sudo apt-get install -y tesseract-ocr poppler-utils | ||
pip install unstructured[all-docs]==0.13.0 | ||
- name: Install and Start PostgreSQL | ||
runs-on: ubuntu-latest | ||
run: | | ||
sudo apt install postgresql -y | ||
sudo service postgresql start | ||
- name: Install packages and dependencies for PGVector | ||
run: | | ||
pip install -e .[retrievechat-pgvector] | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/test_retrieve_utils.py test/agentchat/contrib/test_retrievechat.py test/agentchat/contrib/test_qdrant_retrievechat.py test/agentchat/contrib/vectordb --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
CompressionTest: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.8"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for Compression | ||
run: | | ||
pip install -e . | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/agentchat/contrib/test_compressible_agent.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
GPTAssistantAgent: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.10"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for GPTAssistantAgent | ||
run: | | ||
pip install -e . | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/agentchat/contrib/test_gpt_assistant.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
TeachableAgent: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.11"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for Teachability | ||
run: | | ||
pip install -e .[teachable] | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/agentchat/contrib/capabilities/test_teachable_agent.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
WebSurfer: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.12"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for WebSurfer | ||
run: | | ||
pip install -e .[websurfer] | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/test_browser_utils.py test/agentchat/contrib/test_web_surfer.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
LMMTest: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.12"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
lfs: true | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for LMM | ||
run: | | ||
pip install -e .[lmm] | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/agentchat/contrib/test_img_utils.py test/agentchat/contrib/test_lmm.py test/agentchat/contrib/test_llava.py test/agentchat/contrib/capabilities/test_image_generation_capability.py test/agentchat/contrib/capabilities/test_vision_capability.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
GeminiTest: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.9", "3.10", "3.11", "3.12"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
lfs: true | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for Gemini | ||
run: | | ||
pip install -e .[gemini,test] | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
coverage run -a -m pytest test/oai/test_gemini.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
ContextHandling: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.11"] | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v5 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for Context Handling | ||
run: | | ||
pip install -e . | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/agentchat/contrib/capabilities/test_context_handling.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittests | ||
TransformMessages: | ||
runs-on: ${{ matrix.os }} | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: [ubuntu-latest, macos-latest, windows-2019] | ||
python-version: ["3.11"] | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python ${{ matrix.python-version }} | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: ${{ matrix.python-version }} | ||
- name: Install packages and dependencies for all tests | ||
run: | | ||
python -m pip install --upgrade pip wheel | ||
pip install pytest | ||
- name: Install packages and dependencies for Transform Messages | ||
run: | | ||
pip install -e . | ||
- name: Set AUTOGEN_USE_DOCKER based on OS | ||
shell: bash | ||
run: | | ||
if [[ ${{ matrix.os }} != ubuntu-latest ]]; then | ||
echo "AUTOGEN_USE_DOCKER=False" >> $GITHUB_ENV | ||
fi | ||
- name: Coverage | ||
run: | | ||
pip install coverage>=5.3 | ||
coverage run -a -m pytest test/agentchat/contrib/capabilities/test_transform_messages.py --skip-openai | ||
coverage xml | ||
- name: Upload coverage to Codecov | ||
uses: codecov/codecov-action@v3 | ||
with: | ||
file: ./coverage.xml | ||
flags: unittest |