Add test files
This commit is contained in:
84
test_claude.py
Normal file
84
test_claude.py
Normal file
@ -0,0 +1,84 @@
|
||||
import anthropic
|
||||
import tomli
|
||||
import time
|
||||
from anthropic import APIError, APIConnectionError, RateLimitError
|
||||
|
||||
# Exponential backoff settings
|
||||
MAX_RETRIES = 5
|
||||
INITIAL_DELAY = 1 # seconds
|
||||
BACKOFF_FACTOR = 2
|
||||
|
||||
# def add_agent_entry():
|
||||
def add_user_entry(role: str, message:str):
|
||||
return
|
||||
|
||||
def add_system_entry():
|
||||
return
|
||||
|
||||
def test():
|
||||
with open('anthropic.toml', 'rb') as f:
|
||||
toml_anthropic = tomli.load(f)
|
||||
with open('test_task.toml', 'rb') as f:
|
||||
toml_task = tomli.load(f)
|
||||
|
||||
sonnet_3_7_latest = "claude-3-7-sonnet-20250219"
|
||||
|
||||
retry_count = 0
|
||||
delay = INITIAL_DELAY
|
||||
|
||||
client = anthropic.Anthropic(api_key=toml_anthropic['API']['API_KEY'])
|
||||
|
||||
while retry_count < MAX_RETRIES:
|
||||
try:
|
||||
response = client.messages.create(
|
||||
model=sonnet_3_7_latest,
|
||||
max_tokens=20000,
|
||||
temperature=0.8,
|
||||
system=[
|
||||
{
|
||||
"type": "text",
|
||||
# "text": toml_task['System']['content'],
|
||||
"text": toml_task['System']['content'],
|
||||
"cache_control": {"type": "ephemeral"}
|
||||
}
|
||||
],
|
||||
messages=[
|
||||
{
|
||||
"role": "user",
|
||||
"content": [
|
||||
{
|
||||
"type": "text",
|
||||
"text": toml_task['User']['background'],
|
||||
"cache_control": {"type": "ephemeral"}
|
||||
},
|
||||
{
|
||||
"type": "text",
|
||||
"text": toml_task['User']['request'],
|
||||
"cache_control": {"type": "ephemeral"}
|
||||
}
|
||||
],
|
||||
}
|
||||
]
|
||||
)
|
||||
|
||||
print(f"Usage: {response.usage}")
|
||||
with open('test_response.md', 'w', encoding='utf-8') as f:
|
||||
for content_block in response.content:
|
||||
f.write(content_block.text + '\n')
|
||||
return
|
||||
|
||||
except (APIError, APIConnectionError, RateLimitError) as e:
|
||||
print(f"Attempt {retry_count + 1} failed: {str(e)}")
|
||||
if retry_count == MAX_RETRIES - 1:
|
||||
raise
|
||||
|
||||
time.sleep(delay)
|
||||
delay *= BACKOFF_FACTOR
|
||||
retry_count += 1
|
||||
|
||||
except Exception as e:
|
||||
print(f"Unexpected error: {str(e)}")
|
||||
raise
|
||||
|
||||
if __name__ == "__main__":
|
||||
test()
|
Reference in New Issue
Block a user