ldp 0.33.0.dev0__tar.gz → 33.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- ldp-33.1/.python-version +1 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/PKG-INFO +1 -1
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/llms.py +45 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/types.py +3 -0
- ldp-33.1/packages/lmi/tests/cassettes/TestLiteLLMModel.test_call[OpenAI-model-1].yaml +234 -0
- ldp-0.33.0.dev0/packages/lmi/tests/cassettes/TestLiteLLMModel.test_call[OpenAI-model].yaml → ldp-33.1/packages/lmi/tests/cassettes/TestLiteLLMModel.test_call[OpenAI-model-2].yaml +47 -49
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_model[gpt-3.5-turbo-0125].yaml +24 -22
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_multiple_completion[openai].yaml +47 -43
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_output_schema[json-mode-base-model].yaml +24 -22
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_output_schema[json-mode-type-adapter].yaml +25 -23
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_output_schema[structured-outputs].yaml +25 -23
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_parameterizing_tool_from_arg_union.yaml +26 -24
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_single_completion[claude-3-5-haiku-20241022].yaml +32 -28
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_single_completion[gpt-3.5-turbo-0125].yaml +44 -41
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestMultipleCompletion.test_text_image_message[gpt-4o-mini-2024-07-18].yaml +25 -23
- ldp-33.1/packages/lmi/tests/cassettes/TestReasoning.test_deepseek_model[deepseek-reasoner].yaml +2100 -0
- ldp-33.1/packages/lmi/tests/cassettes/TestReasoning.test_deepseek_model[openrouter-deepseek].yaml +967 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestTooling.test_multi_response_validation.yaml +22 -23
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestTooling.test_tool_selection.yaml +48 -44
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/test_llms.py +31 -1
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/version.py +3 -3
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp.egg-info/PKG-INFO +1 -1
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp.egg-info/SOURCES.txt +2 -1
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestAgentState.test_no_state_mutation[agent0].yaml +26 -24
- ldp-0.33.0.dev0/tests/cassettes/TestMemoryAgent.test_agent_grad.yaml → ldp-33.1/tests/cassettes/TestAgentState.test_no_state_mutation[agent1].yaml +26 -24
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestAgentState.test_no_state_mutation[agent2].yaml +65 -62
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestHTTPAgentClient.test_lifecycle.yaml +104 -96
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestLLMCallOp.test_compute_logprob[0.0].yaml +29 -27
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestLLMCallOp.test_compute_logprob[0.5].yaml +30 -28
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestLLMCallOp.test_compute_logprob[1.0].yaml +30 -27
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestLLMCallOp.test_cost_tracking.yaml +49 -45
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestLLMCallOp.test_empty_tools.yaml +25 -23
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestLLMCallOp.test_validation.yaml +69 -63
- ldp-0.33.0.dev0/tests/cassettes/test_offline_trainer[False].yaml → ldp-33.1/tests/cassettes/TestMemoryAgent.test_agent_grad.yaml +26 -24
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestMemoryAgent.test_dummyenv[gpt-4o-mini-2024-07-18].yaml +28 -26
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestMemoryOpt.test_lessons_memory_optimizer.yaml +111 -101
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestNoToolsSimpleAgent.test_dummyenv[claude-3-5-haiku-20241022].yaml +16 -14
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestNoToolsSimpleAgent.test_dummyenv[gpt-4o-mini-2024-07-18].yaml +25 -23
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestParallelism.test_SimpleAgent_can_parallel_call.yaml +26 -24
- ldp-0.33.0.dev0/tests/cassettes/TestReActAgent.test_react_dummyenv[False-claude-3-5-haiku-20241022].yaml → ldp-33.1/tests/cassettes/TestReActAgent.test_agent_grad[False-claude-3-5-haiku-20241022].yaml +34 -30
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_agent_grad[False-gpt-4o].yaml +53 -48
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_agent_grad[True-claude-3-5-haiku-20241022].yaml +18 -15
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_agent_grad[True-gpt-4-turbo].yaml +26 -24
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_multi_step[False].yaml +157 -148
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_multi_step[True].yaml +75 -69
- ldp-0.33.0.dev0/tests/cassettes/TestReActAgent.test_agent_grad[False-claude-3-5-haiku-20241022].yaml → ldp-33.1/tests/cassettes/TestReActAgent.test_react_dummyenv[False-claude-3-5-haiku-20241022].yaml +36 -32
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_react_dummyenv[False-gpt-4o].yaml +48 -44
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_react_dummyenv[True-claude-3-5-haiku-20241022].yaml +18 -15
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestReActAgent.test_react_dummyenv[True-gpt-4-turbo].yaml +26 -24
- ldp-0.33.0.dev0/tests/cassettes/TestSimpleAgent.test_dummyenv[claude-3-5-haiku-20241022].yaml → ldp-33.1/tests/cassettes/TestSimpleAgent.test_agent_grad[claude-3-5-haiku-20241022].yaml +18 -16
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestSimpleAgent.test_agent_grad[gpt-4o-mini-2024-07-18].yaml +27 -25
- ldp-0.33.0.dev0/tests/cassettes/TestSimpleAgent.test_agent_grad[claude-3-5-haiku-20241022].yaml → ldp-33.1/tests/cassettes/TestSimpleAgent.test_dummyenv[claude-3-5-haiku-20241022].yaml +17 -15
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestSimpleAgent.test_dummyenv[gpt-4o-mini-2024-07-18].yaml +27 -25
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestSimpleAgent.test_hide_old_action_content.yaml +53 -49
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/TestSimpleAgent.test_hide_old_env_states.yaml +46 -42
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_beam_search.yaml +51 -47
- ldp-33.1/tests/cassettes/test_llm_call_graph.yaml +295 -0
- ldp-0.33.0.dev0/tests/cassettes/TestAgentState.test_no_state_mutation[agent1].yaml → ldp-33.1/tests/cassettes/test_offline_trainer[False].yaml +25 -23
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_offline_trainer[True].yaml +26 -24
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_online_trainer[False].yaml +128 -116
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_online_trainer[True].yaml +124 -114
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_reflect_module.yaml +20 -18
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_rollout[False].yaml +52 -48
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_rollout[True].yaml +52 -48
- ldp-0.33.0.dev0/.python-version +0 -1
- ldp-0.33.0.dev0/packages/lmi/tests/cassettes/TestReasoning.test_deepseek_model[deepseek-reasoner].yaml +0 -1412
- ldp-0.33.0.dev0/packages/lmi/tests/cassettes/TestReasoning.test_deepseek_model[openrouter-deepseek].yaml +0 -1487
- ldp-0.33.0.dev0/tests/cassettes/test_llm_call_graph.yaml +0 -295
- {ldp-0.33.0.dev0 → ldp-33.1}/.github/renovate.json5 +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/.github/workflows/docs.yml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/.github/workflows/publish.yml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/.github/workflows/tests.yml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/.gitignore +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/.mailmap +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/.pre-commit-config.yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/.secrets.allowlist +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/CITATION.cff +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/LICENSE +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/README.md +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/citation.bib +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/docs/assets/Aviary.png +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/docs/assets/ldp_chessboard.png +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/docs/assets/ldp_definition.png +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/LICENSE +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/README.md +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/pyproject.toml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/constants.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/cost_tracker.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/embeddings.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/exceptions.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/py.typed +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/rate_limiter.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/src/lmi/utils.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMEmbeddingModel.test_caching.yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMEmbeddingModel.test_embedding_batches.yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMEmbeddingModel.test_router_usage[with-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMEmbeddingModel.test_router_usage[without-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_call[Anthropic-model].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_call_single[with-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_call_single[without-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_call_w_multiple_models[multiple-models].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_cost_call[Anthropic-model].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_cost_call[OpenAI-model].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_cost_call_single[with-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_cost_call_single[without-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_max_token_truncation[with-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestLiteLLMModel.test_max_token_truncation[without-router].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestReasoning.test_anthropic_model.yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestTooling.test_empty_tools[Anthropic-empty-tools].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestTooling.test_empty_tools[Anthropic-no-tools].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestTooling.test_empty_tools[OpenAI-empty-tools].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/cassettes/TestTooling.test_empty_tools[OpenAI-no-tools].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/conftest.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/test_cost_tracking.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/test_embeddings.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/packages/lmi/tests/test_rate_limiter.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/pyproject.toml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/setup.cfg +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/agent.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/agent_client.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/interactive_agent.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/memory_agent.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/react_agent.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/simple_agent.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/agent/tree_of_thoughts_agent.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/algorithms.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/beam_search.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/callbacks.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/datasets.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/optimizer/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/optimizer/ape.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/optimizer/memory.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/optimizer/opt.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/optimizer/replay_buffers.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/rollout.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/runners.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/alg/tree_search.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/data_structures.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/async_torch.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/common_ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/gradient_estimators.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/loss_ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/memory.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/modules/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/modules/llm_call.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/modules/react.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/modules/reflect.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/modules/thought.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/op_utils.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/graph/torch_ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/llms/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/llms/prompts.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/main.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/agent/simple_local_agent.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/chat_templates/README.md +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/chat_templates/llama2_chat_template_ori.jinja +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/chat_templates/llama3.1_chat_template_hf.jinja +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/chat_templates/llama3.1_chat_template_nothought.jinja +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/chat_templates/llama3.1_chat_template_thought.jinja +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/chat_templates/llama3.1_chat_template_vllm.jinja +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/chat_templates/llama3_chat_template_ori.jinja +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/generation/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/generation/base.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/graph/llm_call_op.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/handlers/chunking.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/handlers/module_handler.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/handlers/transformer_handler.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/lm_config.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/nn/utils.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/py.typed +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/shims.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp/utils.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp.egg-info/dependency_links.txt +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp.egg-info/requires.txt +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/src/ldp.egg-info/top_level.txt +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/.gitignore +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/__init__.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-large-0-256].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-large-0-512].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-large-32-256].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-large-32-512].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-large-64-256].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-large-64-512].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-small-0-256].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-small-0-512].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-small-32-256].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-small-32-512].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-small-64-256].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_embedding_op[text-embedding-3-small-64-512].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_fallbacks_working[False].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/cassettes/test_fallbacks_working[True].yaml +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/conftest.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_agents.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_algorithms.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_buffers.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_context_managers.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_data_structures.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_envs.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_gradients.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_loss_ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_memory.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_modules.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_nn_models.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_nn_ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_optimizer.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_prompts.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_readme.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_rollouts.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_runners.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_shims.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_torch_ops.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tests/test_utils.py +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tutorials/creating_a_language_agent.ipynb +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/tutorials/evaluating_a_llama_agent.ipynb +0 -0
- {ldp-0.33.0.dev0 → ldp-33.1}/uv.lock +0 -0
ldp-33.1/.python-version
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
3.12
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ldp
|
|
3
|
-
Version:
|
|
3
|
+
Version: 33.1
|
|
4
4
|
Summary: Agent framework for constructing language model agents and training on constructive tasks.
|
|
5
5
|
Author-email: FutureHouse technical staff <hello@futurehouse.org>
|
|
6
6
|
License: Apache License
|
|
@@ -3,6 +3,7 @@ __all__ = [
|
|
|
3
3
|
"LLMModel",
|
|
4
4
|
"LiteLLMModel",
|
|
5
5
|
"PassThroughRouter",
|
|
6
|
+
"extract_top_logprobs",
|
|
6
7
|
"rate_limited",
|
|
7
8
|
"request_limited",
|
|
8
9
|
"sum_logprobs",
|
|
@@ -75,6 +76,8 @@ class CommonLLMNames(StrEnum):
|
|
|
75
76
|
"""When you don't want to think about models, just use one from here."""
|
|
76
77
|
|
|
77
78
|
# Use these to avoid thinking about exact versions
|
|
79
|
+
GPT_5 = "gpt-5-2025-08-07"
|
|
80
|
+
GPT_5_MINI = "gpt-5-mini-2025-08-07"
|
|
78
81
|
GPT_4O = "gpt-4o-2024-11-20"
|
|
79
82
|
GPT_35_TURBO = "gpt-3.5-turbo-0125"
|
|
80
83
|
CLAUDE_35_SONNET = "claude-3-5-sonnet-20241022"
|
|
@@ -116,6 +119,24 @@ def sum_logprobs(choice: litellm.utils.Choices | list[float]) -> float | None:
|
|
|
116
119
|
return None
|
|
117
120
|
|
|
118
121
|
|
|
122
|
+
def extract_top_logprobs(
|
|
123
|
+
completion: litellm.utils.Choices,
|
|
124
|
+
) -> list[list[tuple[str, float]]] | None:
|
|
125
|
+
"""Extract the top logprobs from an litellm completion."""
|
|
126
|
+
logprobs_obj = getattr(completion, "logprobs", None)
|
|
127
|
+
if logprobs_obj is None:
|
|
128
|
+
return None
|
|
129
|
+
|
|
130
|
+
content = getattr(logprobs_obj, "content", None)
|
|
131
|
+
if not content or not isinstance(content, list):
|
|
132
|
+
return None
|
|
133
|
+
|
|
134
|
+
return [
|
|
135
|
+
[(t.token, float(t.logprob)) for t in (getattr(pos, "top_logprobs", []) or [])]
|
|
136
|
+
for pos in content
|
|
137
|
+
]
|
|
138
|
+
|
|
139
|
+
|
|
119
140
|
def validate_json_completion(
|
|
120
141
|
completion: litellm.ModelResponse,
|
|
121
142
|
output_type: type[BaseModel] | TypeAdapter | JSONSchema,
|
|
@@ -566,6 +587,15 @@ class LiteLLMModel(LLMModel):
|
|
|
566
587
|
if "name" not in data:
|
|
567
588
|
data["name"] = data["config"].get("name", cls.model_fields["name"].default)
|
|
568
589
|
if "model_list" not in data["config"]:
|
|
590
|
+
is_openai_model = "openai" in litellm.get_llm_provider(data["name"])
|
|
591
|
+
max_tokens = data["config"].get("max_tokens")
|
|
592
|
+
if (
|
|
593
|
+
"logprobs" in data["config"] or "top_logprobs" in data["config"]
|
|
594
|
+
) and not is_openai_model:
|
|
595
|
+
logger.warning(
|
|
596
|
+
"Ignoring token logprobs for non-OpenAI model %s, as they are not supported.",
|
|
597
|
+
data["name"],
|
|
598
|
+
)
|
|
569
599
|
data["config"] = {
|
|
570
600
|
"model_list": [
|
|
571
601
|
{
|
|
@@ -582,6 +612,19 @@ class LiteLLMModel(LLMModel):
|
|
|
582
612
|
if "gemini" not in data["name"]
|
|
583
613
|
else {"safety_settings": DEFAULT_VERTEX_SAFETY_SETTINGS}
|
|
584
614
|
)
|
|
615
|
+
| ({} if max_tokens else {"max_tokens": max_tokens})
|
|
616
|
+
| (
|
|
617
|
+
{}
|
|
618
|
+
if "logprobs" not in data["config"]
|
|
619
|
+
or not is_openai_model
|
|
620
|
+
else {"logprobs": data["config"]["logprobs"]}
|
|
621
|
+
)
|
|
622
|
+
| (
|
|
623
|
+
{}
|
|
624
|
+
if "top_logprobs" not in data["config"]
|
|
625
|
+
or not is_openai_model
|
|
626
|
+
else {"top_logprobs": data["config"]["top_logprobs"]}
|
|
627
|
+
)
|
|
585
628
|
),
|
|
586
629
|
}
|
|
587
630
|
],
|
|
@@ -706,6 +749,7 @@ class LiteLLMModel(LLMModel):
|
|
|
706
749
|
prompt=messages,
|
|
707
750
|
messages=output_messages,
|
|
708
751
|
logprob=sum_logprobs(completion),
|
|
752
|
+
top_logprobs=extract_top_logprobs(completion),
|
|
709
753
|
prompt_count=completions.usage.prompt_tokens, # type: ignore[attr-defined]
|
|
710
754
|
completion_count=completions.usage.completion_tokens, # type: ignore[attr-defined]
|
|
711
755
|
system_fingerprint=completions.system_fingerprint,
|
|
@@ -765,6 +809,7 @@ class LiteLLMModel(LLMModel):
|
|
|
765
809
|
prompt=messages,
|
|
766
810
|
messages=[Message(role=role, content=text)],
|
|
767
811
|
logprob=sum_logprobs(logprobs),
|
|
812
|
+
top_logprobs=extract_top_logprobs(completion),
|
|
768
813
|
reasoning_content="".join(reasoning_content),
|
|
769
814
|
)
|
|
770
815
|
|
|
@@ -79,6 +79,9 @@ class LLMResult(BaseModel):
|
|
|
79
79
|
logprob: float | None = Field(
|
|
80
80
|
default=None, description="Sum of logprobs in the completion."
|
|
81
81
|
)
|
|
82
|
+
top_logprobs: list[list[tuple[str, float]]] | None = Field(
|
|
83
|
+
default=None, description="Top logprobs for each position in the completion."
|
|
84
|
+
)
|
|
82
85
|
reasoning_content: str | None = Field(
|
|
83
86
|
default=None, description="Reasoning content from LLMs such as DeepSeek-R1."
|
|
84
87
|
)
|
|
@@ -0,0 +1,234 @@
|
|
|
1
|
+
interactions:
|
|
2
|
+
- request:
|
|
3
|
+
body:
|
|
4
|
+
'{"messages":[{"role":"system","content":"Respond with single words."},{"role":"user","content":"What
|
|
5
|
+
is the meaning of the universe?"}],"model":"gpt-4o-mini-2024-07-18","logprobs":true,"max_tokens":56,"temperature":0,"top_logprobs":5}'
|
|
6
|
+
headers:
|
|
7
|
+
accept:
|
|
8
|
+
- application/json
|
|
9
|
+
accept-encoding:
|
|
10
|
+
- gzip, deflate
|
|
11
|
+
connection:
|
|
12
|
+
- keep-alive
|
|
13
|
+
content-length:
|
|
14
|
+
- "234"
|
|
15
|
+
content-type:
|
|
16
|
+
- application/json
|
|
17
|
+
host:
|
|
18
|
+
- api.openai.com
|
|
19
|
+
user-agent:
|
|
20
|
+
- AsyncOpenAI/Python 1.97.0
|
|
21
|
+
x-stainless-arch:
|
|
22
|
+
- arm64
|
|
23
|
+
x-stainless-async:
|
|
24
|
+
- async:asyncio
|
|
25
|
+
x-stainless-lang:
|
|
26
|
+
- python
|
|
27
|
+
x-stainless-os:
|
|
28
|
+
- MacOS
|
|
29
|
+
x-stainless-package-version:
|
|
30
|
+
- 1.97.0
|
|
31
|
+
x-stainless-raw-response:
|
|
32
|
+
- "true"
|
|
33
|
+
x-stainless-read-timeout:
|
|
34
|
+
- "60.0"
|
|
35
|
+
x-stainless-retry-count:
|
|
36
|
+
- "0"
|
|
37
|
+
x-stainless-runtime:
|
|
38
|
+
- CPython
|
|
39
|
+
x-stainless-runtime-version:
|
|
40
|
+
- 3.12.8
|
|
41
|
+
method: POST
|
|
42
|
+
uri: https://api.openai.com/v1/chat/completions
|
|
43
|
+
response:
|
|
44
|
+
body:
|
|
45
|
+
string: !!binary |
|
|
46
|
+
H4sIAAAAAAAAA8SXXW+bMBSG7/srLK4B+Rh/5nJZpU3TpmnVpE5VNRHitWwEo+BIaav+9wnappSY
|
|
47
|
+
EBLa5iJSXtvkvA/nA+5OEPLSuTdBXnId22RRZMFU/NRn5yv665Z8mn2+Tc8+/tDwZb2cnX8QxPOr
|
|
48
|
+
E2b2Vyf26VSYmEWRaZua/GE5WerY6uqqIBhTmADj9cLCzHVWHbsqbEBNsEjzNCCY0ACLAOTj6WuT
|
|
49
|
+
Jrr0JujiBCGE7urvKs58rtfeBGH/SVnosoyvtDfZbELIW5qsUry4LNPSxrn1/OfFxORW53Xop+u0
|
|
50
|
+
tDpPdNjcsNR/VmVcBZmvsqyxEOe5sXFlsg7t8nHlfhNMZq6KpZmVL6N5/sOLjYgaG+pN1vzT+Sam
|
|
51
|
+
RjjNC3sTFOAQKDBOIikiKgiBSLQ2z25sg93zhyu/pQDBWxJmWxI4JP5CufTbborfDRjtSO5av/v8
|
|
52
|
+
D2awk4ObRQePDiYdXFxsaj4t5d4fQOT7almYUvcwiULBOeOEcpAswkREA5FIt3cQbpm6ZeKWYQhA
|
|
53
|
+
DOMCPFs9NKs+gFLBUQCjAQCVdFvnHUSc11Bvkn9fb3oLkj4W5IbdQHTCnWQE3rPupvVMW/daj9Qx
|
|
54
|
+
1rkYUjFYDSk7LAdkExDcz++ka/UF2a7ZVo3anaMNY4xBYSKEAqpYBJIRtud4c9gC2Opp2zXTbjcj
|
|
55
|
+
zjKH34M89yZR1y0FPKBvjN12dW7TOOvxDziUglUAREQlj4h8VesAfMCEV6KjrMYFdfptetqHSYTs
|
|
56
|
+
IU8OxOR+4BHOBuFuSVyNnR5JGvfYJhBGb5gdXYXRkRzj8kj36BYEjq4W5r9n/zhufoR9w4NhrghR
|
|
57
|
+
DKRSlEu15+igr/Y2E+7T/ndH3XtP6YHPPf8BAAD//6yY4WrDIBDHv+ct5gOEptbYwNheZCCiZyuk
|
|
58
|
+
RtQMCu27D5NsJmuzjKafT4/f/xJP7z/H/HoBIy9vC+Q0L7eEbMo9pfuqKv569sQxeg3Q+1JzLPIi
|
|
59
|
+
slBMdhQ/0hzxcyv4sgSMVwLjJwPnH2YZmcQ/9WHk3czFu6ZnZHdO7C/75sajUdpof2QOuG867T40
|
|
60
|
+
FmXf+bpMqJ14Ssi65mQD68oV9W2H4Rcl2ysFhykQhSbwerRnOCHTZExC4LoeO0ZIcHEEmXYms4u3
|
|
61
|
+
UjejQDaSdstyL3cvW5vDf9KngBBgA0hmHUgtpnrTMgdxzJ5b9lPiDhh5cJ9aAAsaXPwMEhRv637Q
|
|
62
|
+
RP7sA5yY0uYAzjrd23XKMlJuuCqBkApl1+wLAAD//wMA9BG5mrwUAAA=
|
|
63
|
+
headers:
|
|
64
|
+
CF-RAY:
|
|
65
|
+
- 9735d8a06a1c2516-SJC
|
|
66
|
+
Connection:
|
|
67
|
+
- keep-alive
|
|
68
|
+
Content-Encoding:
|
|
69
|
+
- gzip
|
|
70
|
+
Content-Type:
|
|
71
|
+
- application/json
|
|
72
|
+
Date:
|
|
73
|
+
- Fri, 22 Aug 2025 22:35:57 GMT
|
|
74
|
+
Server:
|
|
75
|
+
- cloudflare
|
|
76
|
+
Set-Cookie:
|
|
77
|
+
- __cf_bm=F1EEk8xHpNUkBZOLP7NN.vChOhhegbVd30KuceXOewk-1755902157-1.0.1.1-cEfH_bT0vBdqHLZDTnORZ82yHEHM61nkhA0Fo6rgMtbC4ZTXQAQz_sncplP97nwx59uuv77tfKTZc3x_WT3Rqk5ieVkDFFiwaacthznxRzg;
|
|
78
|
+
path=/; expires=Fri, 22-Aug-25 23:05:57 GMT; domain=.api.openai.com; HttpOnly;
|
|
79
|
+
Secure; SameSite=None
|
|
80
|
+
- _cfuvid=_lWMCKhbpPVnYK4J0BA5Xt6KSwh6FlXnrRJKyDSK9Ok-1755902157514-0.0.1.1-604800000;
|
|
81
|
+
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
|
|
82
|
+
Strict-Transport-Security:
|
|
83
|
+
- max-age=31536000; includeSubDomains; preload
|
|
84
|
+
Transfer-Encoding:
|
|
85
|
+
- chunked
|
|
86
|
+
X-Content-Type-Options:
|
|
87
|
+
- nosniff
|
|
88
|
+
access-control-expose-headers:
|
|
89
|
+
- X-Request-ID
|
|
90
|
+
alt-svc:
|
|
91
|
+
- h3=":443"; ma=86400
|
|
92
|
+
cf-cache-status:
|
|
93
|
+
- DYNAMIC
|
|
94
|
+
openai-organization:
|
|
95
|
+
- future-house-xr4tdh
|
|
96
|
+
openai-processing-ms:
|
|
97
|
+
- "555"
|
|
98
|
+
openai-project:
|
|
99
|
+
- proj_RpeV6PrPclPHBb5GlExPXSBj
|
|
100
|
+
openai-version:
|
|
101
|
+
- "2020-10-01"
|
|
102
|
+
x-envoy-upstream-service-time:
|
|
103
|
+
- "586"
|
|
104
|
+
x-ratelimit-limit-requests:
|
|
105
|
+
- "30000"
|
|
106
|
+
x-ratelimit-limit-tokens:
|
|
107
|
+
- "150000000"
|
|
108
|
+
x-ratelimit-remaining-requests:
|
|
109
|
+
- "29999"
|
|
110
|
+
x-ratelimit-remaining-tokens:
|
|
111
|
+
- "149999980"
|
|
112
|
+
x-ratelimit-reset-requests:
|
|
113
|
+
- 2ms
|
|
114
|
+
x-ratelimit-reset-tokens:
|
|
115
|
+
- 0s
|
|
116
|
+
x-request-id:
|
|
117
|
+
- req_2aa0c6890bd5442f9f269b85d1b7552c
|
|
118
|
+
status:
|
|
119
|
+
code: 200
|
|
120
|
+
message: OK
|
|
121
|
+
- request:
|
|
122
|
+
body:
|
|
123
|
+
'{"messages":[{"role":"system","content":"Respond with single words."},{"role":"user","content":"What
|
|
124
|
+
is the meaning of the universe?"}],"model":"gpt-4o-mini-2024-07-18","logprobs":true,"max_tokens":56,"n":1,"temperature":0,"top_logprobs":5}'
|
|
125
|
+
headers:
|
|
126
|
+
accept:
|
|
127
|
+
- application/json
|
|
128
|
+
accept-encoding:
|
|
129
|
+
- gzip, deflate
|
|
130
|
+
connection:
|
|
131
|
+
- keep-alive
|
|
132
|
+
content-length:
|
|
133
|
+
- "240"
|
|
134
|
+
content-type:
|
|
135
|
+
- application/json
|
|
136
|
+
host:
|
|
137
|
+
- api.openai.com
|
|
138
|
+
user-agent:
|
|
139
|
+
- AsyncOpenAI/Python 1.97.0
|
|
140
|
+
x-stainless-arch:
|
|
141
|
+
- arm64
|
|
142
|
+
x-stainless-async:
|
|
143
|
+
- async:asyncio
|
|
144
|
+
x-stainless-lang:
|
|
145
|
+
- python
|
|
146
|
+
x-stainless-os:
|
|
147
|
+
- MacOS
|
|
148
|
+
x-stainless-package-version:
|
|
149
|
+
- 1.97.0
|
|
150
|
+
x-stainless-raw-response:
|
|
151
|
+
- "true"
|
|
152
|
+
x-stainless-read-timeout:
|
|
153
|
+
- "60.0"
|
|
154
|
+
x-stainless-retry-count:
|
|
155
|
+
- "0"
|
|
156
|
+
x-stainless-runtime:
|
|
157
|
+
- CPython
|
|
158
|
+
x-stainless-runtime-version:
|
|
159
|
+
- 3.12.8
|
|
160
|
+
method: POST
|
|
161
|
+
uri: https://api.openai.com/v1/chat/completions
|
|
162
|
+
response:
|
|
163
|
+
body:
|
|
164
|
+
string: !!binary |
|
|
165
|
+
H4sIAAAAAAAAA8SXXW+bMBSG7/srLK4B+dj4K5fNql1M+5C6StOqanKJ17ARHAVnalX1v0+QNKHE
|
|
166
|
+
lNCkbS4i5bVNzvtwPuD+BKEgmwQjFKRT7dLZPI/G4sJ81/rjKTMp/Tr98fPT8vT0w8W5dtN/Ogir
|
|
167
|
+
E/b6j0nd46k4tbN5blxmi9VyujDameqqIBhTmAAT9cLMTkxeHbuZuyix0SwrsohgkkRYRCDXp6c2
|
|
168
|
+
S00ZjNDlCUII3dffVZzFxNwGI4TDR2VmylLfmGC02YRQsLB5pQS6LLPS6cIF4XYxtYUzRR362W1W
|
|
169
|
+
OlOkJm5uWJjfy1JXQRbLPG8s6KKwTlcm69Cu1isPm2ByezNf2OvyaTTbP7zciKixod7k7F9TbGJq
|
|
170
|
+
hNO8cDBCEY4hAcYJlYImghCgorX5+s412G0/XIUtBQjekTDbkcAj8SfKVdh2M//VgNGO5L71u8//
|
|
171
|
+
YAbPcvCz6ODRwaSDi49NzaelPIQDiHxbLua2ND1MaCw4Z5wkHCSjmAg6EIn0ewfhlxO/TPwyDAGI
|
|
172
|
+
4bgAz5erZtUHUCo4CCAdAFBJv3XeQcR7DfUm+ff5rrcgk3VBbtgNRCf8SUbgPetuXM+0217rVB1i
|
|
173
|
+
nYshFYPVkLLDckA2AcH9/E66Vp+Q7Zpt1ah9drRhjDEoTIRQkChGQTLC9hxvHlsAOz1tt2ba7eaI
|
|
174
|
+
s8zj90Wee5Oo65YCHtA3jt12TeEynff4BxxLwSoAgiaSUyJf1ToAHzDhlegoq+OCOvsyPuvDJGK2
|
|
175
|
+
ypMXYvI/8Ahvg/C3JK6OnR5ppntsE4jpG2ZHV2F0JMdxeWR7dAsCB1cLC9+zfxw2P+K+4cEwV4Qo
|
|
176
|
+
BlKphEu15+hIXu1tJt6n/T8fde89TV743PMfAAD//6yY4WrDIBDHv+ct5gOEptbYwNheZCCiZyuk
|
|
177
|
+
RtQMCu27D5NsJmuzjKafT4/f/xJP7z/H/HoBIy9vC+Q0L7eEbMo9pfuqKv569sQxeg3Q+1JzLPIi
|
|
178
|
+
slBMdhQ/0hzxcyv4sgSMVwLjJwPnH2YZmcQ/9WHk3czFu6ZnZHdO7C/75sajUdpof2QOuG867T40
|
|
179
|
+
FmXf+bpMqJ14Ssi65mQD68oV9W2H4Rcl2ysFhykQhSbwerRnOCHTZExC4LoeO0ZIcHEEmXYms4u3
|
|
180
|
+
UjejQDaSdstyL3cvW5vDf9KngBBgA0hmHUgtpnrTMgdxzJ5b9lPiDhh5cJ9aAAsaXPwMEhRv637Q
|
|
181
|
+
RP7sA5yY0uYAzjrd23XKMlJuuCqBkApl1+wLAAD//wMAhN0oyrwUAAA=
|
|
182
|
+
headers:
|
|
183
|
+
CF-RAY:
|
|
184
|
+
- 9735d8a49f822516-SJC
|
|
185
|
+
Connection:
|
|
186
|
+
- keep-alive
|
|
187
|
+
Content-Encoding:
|
|
188
|
+
- gzip
|
|
189
|
+
Content-Type:
|
|
190
|
+
- application/json
|
|
191
|
+
Date:
|
|
192
|
+
- Fri, 22 Aug 2025 22:35:58 GMT
|
|
193
|
+
Server:
|
|
194
|
+
- cloudflare
|
|
195
|
+
Strict-Transport-Security:
|
|
196
|
+
- max-age=31536000; includeSubDomains; preload
|
|
197
|
+
Transfer-Encoding:
|
|
198
|
+
- chunked
|
|
199
|
+
X-Content-Type-Options:
|
|
200
|
+
- nosniff
|
|
201
|
+
access-control-expose-headers:
|
|
202
|
+
- X-Request-ID
|
|
203
|
+
alt-svc:
|
|
204
|
+
- h3=":443"; ma=86400
|
|
205
|
+
cf-cache-status:
|
|
206
|
+
- DYNAMIC
|
|
207
|
+
openai-organization:
|
|
208
|
+
- future-house-xr4tdh
|
|
209
|
+
openai-processing-ms:
|
|
210
|
+
- "1374"
|
|
211
|
+
openai-project:
|
|
212
|
+
- proj_RpeV6PrPclPHBb5GlExPXSBj
|
|
213
|
+
openai-version:
|
|
214
|
+
- "2020-10-01"
|
|
215
|
+
x-envoy-upstream-service-time:
|
|
216
|
+
- "1385"
|
|
217
|
+
x-ratelimit-limit-requests:
|
|
218
|
+
- "30000"
|
|
219
|
+
x-ratelimit-limit-tokens:
|
|
220
|
+
- "150000000"
|
|
221
|
+
x-ratelimit-remaining-requests:
|
|
222
|
+
- "29999"
|
|
223
|
+
x-ratelimit-remaining-tokens:
|
|
224
|
+
- "149999982"
|
|
225
|
+
x-ratelimit-reset-requests:
|
|
226
|
+
- 2ms
|
|
227
|
+
x-ratelimit-reset-tokens:
|
|
228
|
+
- 0s
|
|
229
|
+
x-request-id:
|
|
230
|
+
- req_a71b086dd5464ff482e7d1a41c1d969f
|
|
231
|
+
status:
|
|
232
|
+
code: 200
|
|
233
|
+
message: OK
|
|
234
|
+
version: 1
|
|
@@ -2,7 +2,7 @@ interactions:
|
|
|
2
2
|
- request:
|
|
3
3
|
body:
|
|
4
4
|
'{"messages":[{"role":"system","content":"Respond with single words."},{"role":"user","content":"What
|
|
5
|
-
is the meaning of the universe?"}],"model":"gpt-
|
|
5
|
+
is the meaning of the universe?"}],"model":"gpt-5-mini-2025-08-07","n":1,"temperature":1.0}'
|
|
6
6
|
headers:
|
|
7
7
|
accept:
|
|
8
8
|
- application/json
|
|
@@ -11,13 +11,13 @@ interactions:
|
|
|
11
11
|
connection:
|
|
12
12
|
- keep-alive
|
|
13
13
|
content-length:
|
|
14
|
-
- "
|
|
14
|
+
- "192"
|
|
15
15
|
content-type:
|
|
16
16
|
- application/json
|
|
17
17
|
host:
|
|
18
18
|
- api.openai.com
|
|
19
19
|
user-agent:
|
|
20
|
-
- AsyncOpenAI/Python 1.
|
|
20
|
+
- AsyncOpenAI/Python 1.97.0
|
|
21
21
|
x-stainless-arch:
|
|
22
22
|
- arm64
|
|
23
23
|
x-stainless-async:
|
|
@@ -27,7 +27,7 @@ interactions:
|
|
|
27
27
|
x-stainless-os:
|
|
28
28
|
- MacOS
|
|
29
29
|
x-stainless-package-version:
|
|
30
|
-
- 1.
|
|
30
|
+
- 1.97.0
|
|
31
31
|
x-stainless-raw-response:
|
|
32
32
|
- "true"
|
|
33
33
|
x-stainless-read-timeout:
|
|
@@ -43,19 +43,16 @@ interactions:
|
|
|
43
43
|
response:
|
|
44
44
|
body:
|
|
45
45
|
string: !!binary |
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
s04b7L3z9Uy4nV1bbBpdG5f1YXQqAnakw+NmGcHwhDnteDWZOf0Cc7IsB8dlNb2UWHCxh3ycHPcJ
|
|
54
|
-
b3OpJ4A3sbbUcon7aFuq8hr6ERACjIM8Mw3kUsz9jm0NdGv3T21DxL1gbKH5IQVkTkLTHUMOBW+r
|
|
55
|
-
43LB9mAd1FkhVQmNaeRxIxYmCxmPGIc0FNh7834DAAD//wMA9YZqvx8GAAA=
|
|
46
|
+
H4sIAAAAAAAAA3SSMU/DMBCF9/wKy3OD0kBS2hUhBmCiYiiqImNfEoNjW/YFKFX/O7JbmlTQJYO/
|
|
47
|
+
u5d3726bEEKloAtCecuQd1alN+XDrX5a9p/18uZ5meHd6rv5WrHPdn4Pl3QSOszrG3D87brgprMK
|
|
48
|
+
UBq9x9wBQwiq01lRlPmsvJpG0BkBKrQ1FtMi7aSWaZ7lRZpdp9ns0NwaycHTBXlJCCFkG7/Bphbw
|
|
49
|
+
RRckm/y+dOA9a4AujkWEUGdUeKHMe+mRaaSTAXKjEXR0/rjxCG4zpg7q3rNgUPdKjQDT2iALA0Zf
|
|
50
|
+
6wPZHZ3UUkvfVg6YNzqoezSWRrpLCFnHyfoTs9Q601ms0LxDlM0v93J0iHMEy9mBokGmRmB+yONU
|
|
51
|
+
rxKATCo/yoZyxlsQQ+sQJOuFNCOQjKb7a+c/7f3kUjcjZ0V59gcD4BwsgqisAyH56dBDmYNwcOfK
|
|
52
|
+
jjlHy9SD+5AcKpTgwi4E1KxX+zugPqy9q2qpG3DWyXgMYd3JLvkBAAD//wMAi9uPlg4DAAA=
|
|
56
53
|
headers:
|
|
57
54
|
CF-RAY:
|
|
58
|
-
-
|
|
55
|
+
- 971baa96fe3515d6-SJC
|
|
59
56
|
Connection:
|
|
60
57
|
- keep-alive
|
|
61
58
|
Content-Encoding:
|
|
@@ -63,15 +60,17 @@ interactions:
|
|
|
63
60
|
Content-Type:
|
|
64
61
|
- application/json
|
|
65
62
|
Date:
|
|
66
|
-
-
|
|
63
|
+
- Tue, 19 Aug 2025 18:20:45 GMT
|
|
67
64
|
Server:
|
|
68
65
|
- cloudflare
|
|
69
66
|
Set-Cookie:
|
|
70
|
-
- __cf_bm=
|
|
71
|
-
path=/; expires=
|
|
67
|
+
- __cf_bm=BiL4CWRmYY.Nx0J0OAmyVqp29WlTKiZg5wKmqYOiofw-1755627645-1.0.1.1-iAODe8oKBFIV9q86KPOXc2eAqh3DeP7mDiROW86AQMDjQBnwqTYC664ntAZ86sCvTQF6bYmMartD1lSmcfZd.UfRfQCknUfCsAoPSzbyga4;
|
|
68
|
+
path=/; expires=Tue, 19-Aug-25 18:50:45 GMT; domain=.api.openai.com; HttpOnly;
|
|
72
69
|
Secure; SameSite=None
|
|
73
|
-
- _cfuvid=
|
|
70
|
+
- _cfuvid=k5.SapkR00HiwUpEGYMI2GTCYrSXRu3RYWl4clzpAiY-1755627645995-0.0.1.1-604800000;
|
|
74
71
|
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
|
|
72
|
+
Strict-Transport-Security:
|
|
73
|
+
- max-age=31536000; includeSubDomains; preload
|
|
75
74
|
Transfer-Encoding:
|
|
76
75
|
- chunked
|
|
77
76
|
X-Content-Type-Options:
|
|
@@ -85,34 +84,34 @@ interactions:
|
|
|
85
84
|
openai-organization:
|
|
86
85
|
- future-house-xr4tdh
|
|
87
86
|
openai-processing-ms:
|
|
88
|
-
- "
|
|
87
|
+
- "4468"
|
|
88
|
+
openai-project:
|
|
89
|
+
- proj_RpeV6PrPclPHBb5GlExPXSBj
|
|
89
90
|
openai-version:
|
|
90
91
|
- "2020-10-01"
|
|
91
|
-
strict-transport-security:
|
|
92
|
-
- max-age=31536000; includeSubDomains; preload
|
|
93
92
|
x-envoy-upstream-service-time:
|
|
94
|
-
- "
|
|
93
|
+
- "4490"
|
|
95
94
|
x-ratelimit-limit-requests:
|
|
96
95
|
- "30000"
|
|
97
96
|
x-ratelimit-limit-tokens:
|
|
98
|
-
- "
|
|
97
|
+
- "180000000"
|
|
99
98
|
x-ratelimit-remaining-requests:
|
|
100
99
|
- "29999"
|
|
101
100
|
x-ratelimit-remaining-tokens:
|
|
102
|
-
- "
|
|
101
|
+
- "179999982"
|
|
103
102
|
x-ratelimit-reset-requests:
|
|
104
103
|
- 2ms
|
|
105
104
|
x-ratelimit-reset-tokens:
|
|
106
105
|
- 0s
|
|
107
106
|
x-request-id:
|
|
108
|
-
-
|
|
107
|
+
- req_4f277ef6e17b48a69407e3d6fa1daf1a
|
|
109
108
|
status:
|
|
110
109
|
code: 200
|
|
111
110
|
message: OK
|
|
112
111
|
- request:
|
|
113
112
|
body:
|
|
114
113
|
'{"messages":[{"role":"system","content":"Respond with single words."},{"role":"user","content":"What
|
|
115
|
-
is the meaning of the universe?"}],"model":"gpt-
|
|
114
|
+
is the meaning of the universe?"}],"model":"gpt-5-mini-2025-08-07","n":1,"temperature":1.0}'
|
|
116
115
|
headers:
|
|
117
116
|
accept:
|
|
118
117
|
- application/json
|
|
@@ -121,13 +120,13 @@ interactions:
|
|
|
121
120
|
connection:
|
|
122
121
|
- keep-alive
|
|
123
122
|
content-length:
|
|
124
|
-
- "
|
|
123
|
+
- "192"
|
|
125
124
|
content-type:
|
|
126
125
|
- application/json
|
|
127
126
|
host:
|
|
128
127
|
- api.openai.com
|
|
129
128
|
user-agent:
|
|
130
|
-
- AsyncOpenAI/Python 1.
|
|
129
|
+
- AsyncOpenAI/Python 1.97.0
|
|
131
130
|
x-stainless-arch:
|
|
132
131
|
- arm64
|
|
133
132
|
x-stainless-async:
|
|
@@ -137,7 +136,7 @@ interactions:
|
|
|
137
136
|
x-stainless-os:
|
|
138
137
|
- MacOS
|
|
139
138
|
x-stainless-package-version:
|
|
140
|
-
- 1.
|
|
139
|
+
- 1.97.0
|
|
141
140
|
x-stainless-raw-response:
|
|
142
141
|
- "true"
|
|
143
142
|
x-stainless-read-timeout:
|
|
@@ -153,19 +152,16 @@ interactions:
|
|
|
153
152
|
response:
|
|
154
153
|
body:
|
|
155
154
|
string: !!binary |
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
jMXR+7xhEu7O9hZbZ1obqiGLXkV6NIfH0zKS2ZELJohm0sPjK8OqGoJQzXQrsRRyB/XYOR4U0dXK
|
|
164
|
-
TIhoYm2u5drsg22lt7eMHwkpwQaoK+ugVvLc71jmoL+7fyo7RTwIxh7cs5JQBQWuf4YaNqJrDtcF
|
|
165
|
-
+70P0FYbpbfgrFOHk7ixVcZEzgSUmcTRW/QbAAD//wMA3JYzvyAGAAA=
|
|
155
|
+
H4sIAAAAAAAAA3SSy27CMBBF9/kKy2tShRSSwhaVqlIr9bGoqgpFrj2AqWNb9qQqRfx7ZfNIUGGT
|
|
156
|
+
hc/cmzuPTUIIlYKOCeVLhry2Kp0UD7f+Sd29vmR88lxO6/fRCn/vp35g3xTtBYX5XAHHg+qKm9oq
|
|
157
|
+
QGn0DnMHDCG49svhsMjLYlBEUBsBKsgWFtNhWkst0zzLh2l2k2blXrw0koOnY/KREELIJn5DTC3g
|
|
158
|
+
h45J1ju81OA9WwAdH4sIoc6o8EKZ99Ij00h7LeRGI+iY/HHtEdy6Sx3MG89CQN0o1QFMa4MsNBhz
|
|
159
|
+
zfZke0wyl1r6ZeWAeaODu0djaaTbhJBZ7Kw5CUutM7XFCs0XRNv8emdH23F2YHagaJCpDsiL3hm/
|
|
160
|
+
SgAyqXxnNpQzvgTRSttBskZI0wFJp7v/cc557zqXetG69Ef5xR+0gHOwCKKyDoTkp023ZQ7CwV0q
|
|
161
|
+
O845RqYe3LfkUKEEF3YhYM4atbsD6sPa62ou9QKcdTIeQ1h3sk3+AAAA//8DADSZWw4OAwAA
|
|
166
162
|
headers:
|
|
167
163
|
CF-RAY:
|
|
168
|
-
-
|
|
164
|
+
- 971baab42f5b15d6-SJC
|
|
169
165
|
Connection:
|
|
170
166
|
- keep-alive
|
|
171
167
|
Content-Encoding:
|
|
@@ -173,9 +169,11 @@ interactions:
|
|
|
173
169
|
Content-Type:
|
|
174
170
|
- application/json
|
|
175
171
|
Date:
|
|
176
|
-
-
|
|
172
|
+
- Tue, 19 Aug 2025 18:20:50 GMT
|
|
177
173
|
Server:
|
|
178
174
|
- cloudflare
|
|
175
|
+
Strict-Transport-Security:
|
|
176
|
+
- max-age=31536000; includeSubDomains; preload
|
|
179
177
|
Transfer-Encoding:
|
|
180
178
|
- chunked
|
|
181
179
|
X-Content-Type-Options:
|
|
@@ -189,27 +187,27 @@ interactions:
|
|
|
189
187
|
openai-organization:
|
|
190
188
|
- future-house-xr4tdh
|
|
191
189
|
openai-processing-ms:
|
|
192
|
-
- "
|
|
190
|
+
- "3826"
|
|
191
|
+
openai-project:
|
|
192
|
+
- proj_RpeV6PrPclPHBb5GlExPXSBj
|
|
193
193
|
openai-version:
|
|
194
194
|
- "2020-10-01"
|
|
195
|
-
strict-transport-security:
|
|
196
|
-
- max-age=31536000; includeSubDomains; preload
|
|
197
195
|
x-envoy-upstream-service-time:
|
|
198
|
-
- "
|
|
196
|
+
- "3868"
|
|
199
197
|
x-ratelimit-limit-requests:
|
|
200
198
|
- "30000"
|
|
201
199
|
x-ratelimit-limit-tokens:
|
|
202
|
-
- "
|
|
200
|
+
- "180000000"
|
|
203
201
|
x-ratelimit-remaining-requests:
|
|
204
202
|
- "29999"
|
|
205
203
|
x-ratelimit-remaining-tokens:
|
|
206
|
-
- "
|
|
204
|
+
- "179999982"
|
|
207
205
|
x-ratelimit-reset-requests:
|
|
208
206
|
- 2ms
|
|
209
207
|
x-ratelimit-reset-tokens:
|
|
210
208
|
- 0s
|
|
211
209
|
x-request-id:
|
|
212
|
-
-
|
|
210
|
+
- req_8e94e7d585154cb3af801d9a3e27a247
|
|
213
211
|
status:
|
|
214
212
|
code: 200
|
|
215
213
|
message: OK
|