llama-stack icon indicating copy to clipboard operation
llama-stack copied to clipboard

[#432] Add Groq Provider - tool calls

Open aidando73 opened this issue 11 months ago • 0 comments
trafficstars

What does this PR do?

Contributes to issue #432

  • Adds tool calls to Groq provider
  • Enables tool call integration tests

PR Train

  • https://github.com/meta-llama/llama-stack/pull/609
  • https://github.com/meta-llama/llama-stack/pull/630 👈

Test Plan

Environment:

export GROQ_API_KEY=<api-key>

# build.yaml and run.yaml files
wget https://raw.githubusercontent.com/aidando73/llama-stack/9165502582cd7cb178bc1dcf89955b45768ab6c1/build.yaml
wget https://raw.githubusercontent.com/aidando73/llama-stack/9165502582cd7cb178bc1dcf89955b45768ab6c1/run.yaml

# Create environment if not already
conda create --prefix ./envs python=3.10
conda activate ./envs

# Build and run
pip install -e . \
&& llama stack build --config ./build.yaml --image-type conda \
&& llama stack run ./run.yaml \
  --port 5001
Unit tests: pytest llama_stack/providers/tests/inference/groq/test_groq_utils.py -vv -k groq -s
llama_stack/providers/tests/inference/groq/test_groq_utils.py .....................

======================================== 21 passed, 1 warning in 0.05s ========================================
Integration tests: pytest llama_stack/providers/tests/inference/test_text_inference.py -k groq -s
llama_stack/providers/tests/inference/test_text_inference.py .sss.s.ss.sss.s...

========================== 8 passed, 10 skipped, 180 deselected, 7 warnings in 2.73s ==========================
Manual

Via this Jupyter notebook: https://github.com/aidando73/llama-stack/blob/9165502582cd7cb178bc1dcf89955b45768ab6c1/hello.ipynb

Before submitting

  • [ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
  • [x] Ran pre-commit to handle lint / formatting issues.
  • [x] Read the contributor guideline, Pull Request section?
  • [x] Updated relevant documentation. (no relevant documentation it seems)
  • [x] Wrote necessary unit or integration tests.

aidando73 avatar Dec 14 '24 23:12 aidando73