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

Adding new options for LLM #768

Merged
merged 4 commits into from
Oct 3, 2023
Merged

Conversation

nv-braf
Copy link
Contributor

@nv-braf nv-braf commented Sep 29, 2023

Added the following new options to support LLM:

  • --llm-search-enable
  • --run-config-search-min/max-prompt-length
  • --run-config-search-min/max-token-count
  • --prompt-length
  • --token-count

tests/test_model_config_measurement.py Fixed Show fixed Hide fixed
tests/test_cli.py Fixed Show fixed Hide fixed
tests/test_cli.py Fixed Show fixed Hide fixed
@@ -51,10 +51,15 @@
DEFAULT_RUN_CONFIG_MIN_MODEL_BATCH_SIZE = 1
DEFAULT_RUN_CONFIG_MAX_MODEL_BATCH_SIZE = 128
DEFAULT_RUN_CONFIG_MAX_BINARY_SEARCH_STEPS = 5
DEFAULT_RUN_CONFIG_MIN_PROMPT_LENGTH = 1
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These are just placeholder values. Need input from LLM stakeholders to pick real values

@@ -36,62 +37,6 @@
from model_analyzer.triton.server.server_config import TritonServerConfig

from .config_command import ConfigCommand
from .config_defaults import (
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It was getting annoying (and ugly) to keep adding more defaults. So, I switched this to import all the defaults

@@ -71,23 +72,27 @@ def get_test_options():
# The following options can be None:
# short_option
# expected_default_value
OptionStruct("int", "profile", "--client-max-retries", "-r", "125", "50"),
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Boyscoutted the removal of magic numbers

@nv-braf nv-braf marked this pull request as ready for review October 2, 2023 14:31
@nv-braf nv-braf force-pushed the new-cli-config-options-for-llm branch from 187c1c4 to 81d7e23 Compare October 2, 2023 15:19
@@ -12,8 +12,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.

ARG BASE_IMAGE=nvcr.io/nvidia/tritonserver:23.08-py3
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know why these changes are showing up after I rebased, but these and the docs changes are safe to ignore.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe you can try this to remove the unwanted commit from PR: https://stackoverflow.com/a/51400593

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not too concerned. They match what is on the add-llm-mode branch and will go away when this subbranch is pushed. Just wanted to call it out so you wouldn't review it.

@nv-braf nv-braf merged commit c9d467f into add-llm-mode Oct 3, 2023
3 checks passed
nv-braf added a commit that referenced this pull request Nov 3, 2023
* Adding new options for LLM (#768)

* Update README and versions for 23.09 branch (#761) (#767)

* Adding new options for LLM

* Fixing codeQL issues

* Fixing codeQL issue

---------

Co-authored-by: Misha Chornyi <99709299+mc-nv@users.noreply.github.com>

* Add LLM support to Brute Search (#769)

* Initial coding complete

* First unit test passing

* Adding test for prompt length

* Refactor PACG methods

* Further refactoring

* Ensure early exit isn't enabled for LLM models

* Fix type checking errors

* Attempt at fixing codeql issue

* Revert "Attempt at fixing codeql issue"

This reverts commit 2619b83.

* Attempt at codeQL fix

* Adding deepcopy back in

* Removing deepcopy in an attempt to fix codeQL errors

* Update model_analyzer/config/input/config_command_profile.py

Co-authored-by: Hyunjae Woo <107147848+nv-hwoo@users.noreply.github.com>

* Update model_analyzer/config/generate/perf_analyzer_config_generator.py

Co-authored-by: Hyunjae Woo <107147848+nv-hwoo@users.noreply.github.com>

* Update model_analyzer/config/generate/perf_analyzer_config_generator.py

Co-authored-by: Hyunjae Woo <107147848+nv-hwoo@users.noreply.github.com>

* Update model_analyzer/config/generate/perf_analyzer_config_generator.py

Co-authored-by: Hyunjae Woo <107147848+nv-hwoo@users.noreply.github.com>

* Moving location of method

* Changing parameter to inference load

* Changing parameter to inference load

* Changing prompt length to text input length

* Changing max_tokens to use request-parameter

* Fix input-data typo

* Changing non-parameter to parameter

---------

Co-authored-by: Hyunjae Woo <107147848+nv-hwoo@users.noreply.github.com>

* New LLM record types (#770)

* New measurement fields created.

* Fixing omission in llm_metric_table

* Changing name to be avg_token_to_token...

* New config options based on live run (#775)

* Added new config options and modified existing options

* Refactoring model parameter setting

* Removing magic numbers

* Capture LLM metrics from PA (#774)

* Initial code for aggregation of new LLM metrics

* New measurement fields created.

* Fixing PA unit tests

* Adding hooks in metrics to capture new LLM fields

* Fixing codeQL errors

* Fixing type checking errors

* Changes needed post-merge from other branches

* Revert naming mistake (due to merge).

* Changes uncovered during live testing

* Fixes based on hwoo review

* Fixing typo

* Change to use lists and mean()

* Changes based on hwoo review

* Correct how periodic concurrency works in PACG (#777)

* Created a new class ConfigRangeNumeric and using it for periodic-concurrency

* Fixes and defaults for periodic concurrency

* First unit test passing

* PACG chagnes complete. Unit tests updated and passing

* Removing uneeded class

* Fixing codeQL and hwoo's review suggestions

* Adding missing else

* Llm testing live run (#778)

* Created a new class ConfigRangeNumeric and using it for periodic-concurrency

* Fixes and defaults for periodic concurrency

* First unit test passing

* PACG chagnes complete. Unit tests updated and passing

* Removing uneeded class

* Changes to fix live run

* Minor refactor and cleanup

* Removing json files

* Changing to use f-string

* More cleanup from hwoo CR

* Removing stale code for request period

* Fix nit

* Changes to get LLM summary reports working (#779)

* Changes to get LLM summary reports working

* Addressing hwoo's CR

* Adding illegal LLM checks w/ unit testing + some minor cleanup (#781)

* Adding illegal LLM checks w/ unit testing + some minor cleanup

* Updated with TMA

* Misc LLM cleanup (#782)

* General cleanup

* Add ticket nums to todos

* Fix for non-LLM breaking bug introduced.

* summary table in progress

---------

Co-authored-by: Misha Chornyi <99709299+mc-nv@users.noreply.github.com>
Co-authored-by: Hyunjae Woo <107147848+nv-hwoo@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants