MCPcopy
hub / github.com/algorithmicsuperintelligence/optillm / main

Function main

tests/test.py:145–186  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

143 print(f" Error: {approach_result['result']}")
144
145def main():
146 parser = argparse.ArgumentParser(description="Test different LLM inference approaches.")
147 parser.add_argument("--test_cases", type=str, default=None, help="Path to test cases JSON file")
148 parser.add_argument("--approaches", nargs='+', default=list(APPROACHES.keys()), help="Approaches to test")
149 parser.add_argument("--model", type=str, default="gpt-4o-mini", help="Model to use for testing")
150 parser.add_argument("--base-url", type=str, default=None, help="The base_url for the OpenAI API compatible endpoint")
151 parser.add_argument("--single-test", type=str, default=None, help="Name of a single test case to run")
152 args = parser.parse_args()
153
154 # Set default test_cases path relative to this script
155 if args.test_cases is None:
156 script_dir = os.path.dirname(os.path.abspath(__file__))
157 args.test_cases = os.path.join(script_dir, "test_cases.json")
158
159 # If using local inference mode, override model to a local model
160 if API_KEY == "optillm" and args.model == "gpt-4o-mini":
161 args.model = TEST_MODEL
162 logger.info(f"Using local model: {args.model}")
163
164 # Set environment variable for local inference
165 if API_KEY == "optillm":
166 os.environ["OPTILLM_API_KEY"] = "optillm"
167
168 test_cases = load_test_cases(args.test_cases)
169
170 # Use local inference by default for testing
171 if args.base_url:
172 client = OpenAI(api_key=API_KEY, base_url=args.base_url)
173 elif API_KEY == "optillm":
174 # Use local inference endpoint
175 client = OpenAI(api_key=API_KEY, base_url="http://localhost:8000/v1")
176 logger.info("Using local inference endpoint: http://localhost:8000/v1")
177 else:
178 client = OpenAI(api_key=API_KEY)
179 # client = LiteLLMWrapper()
180
181 results = run_tests(test_cases, args.approaches, client, args.model, args.single_test)
182 print_summary(results)
183
184 # Optionally, save detailed results to a file
185 with open('test_results.json', 'w') as f:
186 json.dump(results, f, indent=2)
187
188if __name__ == "__main__":
189 main()

Callers 1

test.pyFile · 0.70

Calls 3

load_test_casesFunction · 0.85
print_summaryFunction · 0.85
run_testsFunction · 0.70

Tested by

no test coverage detected