run_infer.sh 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. #!/bin/bash
  2. set -eo pipefail
  3. source "evaluation/utils/version_control.sh"
  4. MODEL_CONFIG=$1
  5. COMMIT_HASH=$2
  6. AGENT=$3
  7. EVAL_LIMIT=$4
  8. MAX_ITER=$5
  9. NUM_WORKERS=$6
  10. if [ -z "$NUM_WORKERS" ]; then
  11. NUM_WORKERS=1
  12. echo "Number of workers not specified, use default $NUM_WORKERS"
  13. fi
  14. checkout_eval_branch
  15. if [ -z "$AGENT" ]; then
  16. echo "Agent not specified, use default CodeActAgent"
  17. AGENT="CodeActAgent"
  18. fi
  19. if [ -z "$MAX_ITER" ]; then
  20. echo "MAX_ITER not specified, use default 30"
  21. MAX_ITER=30
  22. fi
  23. if [ -z "$USE_INSTANCE_IMAGE" ]; then
  24. echo "USE_INSTANCE_IMAGE not specified, use default true"
  25. USE_INSTANCE_IMAGE=true
  26. fi
  27. export USE_INSTANCE_IMAGE=$USE_INSTANCE_IMAGE
  28. echo "USE_INSTANCE_IMAGE: $USE_INSTANCE_IMAGE"
  29. get_agent_version
  30. echo "AGENT: $AGENT"
  31. echo "AGENT_VERSION: $AGENT_VERSION"
  32. echo "MODEL_CONFIG: $MODEL_CONFIG"
  33. # Default to NOT use Hint
  34. if [ -z "$USE_HINT_TEXT" ]; then
  35. export USE_HINT_TEXT=false
  36. fi
  37. echo "USE_HINT_TEXT: $USE_HINT_TEXT"
  38. EVAL_NOTE="$AGENT_VERSION"
  39. # if not using Hint, add -no-hint to the eval note
  40. if [ "$USE_HINT_TEXT" = false ]; then
  41. EVAL_NOTE="$EVAL_NOTE-no-hint"
  42. fi
  43. unset SANDBOX_ENV_GITHUB_TOKEN # prevent the agent from using the github token to push
  44. COMMAND="poetry run python evaluation/swe_bench/run_infer.py \
  45. --agent-cls $AGENT \
  46. --llm-config $MODEL_CONFIG \
  47. --max-iterations $MAX_ITER \
  48. --max-chars 10000000 \
  49. --eval-num-workers $NUM_WORKERS \
  50. --eval-note $EVAL_NOTE"
  51. if [ -n "$EVAL_LIMIT" ]; then
  52. echo "EVAL_LIMIT: $EVAL_LIMIT"
  53. COMMAND="$COMMAND --eval-n-limit $EVAL_LIMIT"
  54. fi
  55. # Run the command
  56. eval $COMMAND
  57. checkout_original_branch