Spaces:
Paused
Paused
Download src/tools/api_lib/claude.py from snap-stanford/SKB-Explorer: direct link, hf CLI and curl.
- Browser
- Download file 1.32 kB
-
https://huggingface.co/spaces/snap-stanford/SKB-Explorer/resolve/main/src/tools/api_lib/claude.py
- Command line
-
hf download hf://spaces/snap-stanford/SKB-Explorer/src/tools/api_lib/claude.py
-
curl -L -o claude.py https://huggingface.co/spaces/snap-stanford/SKB-Explorer/resolve/main/src/tools/api_lib/claude.py
1.32 kB
| import time | |
| from src.tools.api_lib import anthropic_client | |
| def complete_text_claude(message, | |
| model="claude-2.1", | |
| json_object=False, | |
| max_tokens=2048, | |
| temperature=1, | |
| max_retry=1, | |
| sleep_time=0, | |
| tools=[], | |
| **kwargs | |
| ): | |
| """ Call the Claude API to complete a prompt.""" | |
| if isinstance(message, str): | |
| if json_object: | |
| message = "You are a helpful assistant designed to output in JSON format." + message | |
| messages = [{"role": "user", "content": message}] | |
| else: | |
| messages = message | |
| for cnt in range(max_retry): | |
| try: | |
| message = anthropic_client.beta.tools.messages.create( | |
| messages=messages, | |
| model=model, | |
| temperature=temperature, | |
| max_tokens=max_tokens, | |
| tools=tools, | |
| **kwargs | |
| ) | |
| completion = message.to_dict() | |
| return completion["content"][0]['text'] | |
| except Exception as e: | |
| print(cnt, "=>", e, f' [sleep for {sleep_time} sec]') | |
| time.sleep(sleep_time) | |
| raise e | |