diff --git a/README.md b/README.md
index 22f3074..0596f65 100644
--- a/README.md
+++ b/README.md
@@ -185,12 +185,32 @@ This lists various services that provide free access or credits towards API-base
| Llama 3.1 8B |
|
-
- | GitHub Models |
- Waitlist |
- Access to Azure AI models from OpenAI, Anthropic, Mistral, Cohere, AI21, Phi. |
- Rate limits dependent on Copilot subscription tier |
-
+ | GitHub Models | Waitlist Rate limits dependent on Copilot subscription tier | AI21-Jamba-Instruct | |
+| Cohere Command R | |
+| Cohere Command R+ | |
+| Cohere Embed v3 English | |
+| Cohere Embed v3 Multilingual | |
+| Meta-Llama-3-70B-Instruct | |
+| Meta-Llama-3-8B-Instruct | |
+| Meta-Llama-3.1-405B-Instruct | |
+| Meta-Llama-3.1-70B-Instruct | |
+| Meta-Llama-3.1-8B-Instruct | |
+| Mistral Large | |
+| Mistral Large (2407) | |
+| Mistral Nemo | |
+| Mistral Small | |
+| OpenAI GPT-4o | |
+| OpenAI GPT-4o mini | |
+| OpenAI Text Embedding 3 (large) | |
+| OpenAI Text Embedding 3 (small) | |
+| Phi-3-medium instruct (128k) | |
+| Phi-3-medium instruct (4k) | |
+| Phi-3-mini instruct (128k) | |
+| Phi-3-mini instruct (4k) | |
+| Phi-3-small instruct (128k) | |
+| Phi-3-small instruct (8k) | |
+| Phi-3.5-mini instruct (128k) | |
+
## Providers with trial credits
@@ -258,7 +278,7 @@ This lists various services that provide free access or credits towards API-base
Phone number verification |
Various open models |
- | Hyperbolic | $10 | | Hermes 3 Llama 3.1 70B |
+ | Hyperbolic | $10 | | Hermes 3 Llama 3.1 70B |
| Llama 3 70B Instruct |
| Llama 3.1 405B Base |
| Llama 3.1 405B Base (FP8) |
@@ -266,5 +286,6 @@ This lists various services that provide free access or credits towards API-base
| Llama 3.1 70B Instruct |
| Llama 3.1 8B Instruct |
| Reflection Llama 3.1 70B |
+| deepseek-ai/deepseek-v2.5 |
\ No newline at end of file
diff --git a/src/pull_available_models.py b/src/pull_available_models.py
index 6796366..3b046d8 100644
--- a/src/pull_available_models.py
+++ b/src/pull_available_models.py
@@ -100,6 +100,8 @@ MODEL_TO_NAME_MAPPING = {
"mattshumer/reflection-70b:free": "Reflection Llama 3.1 70B",
"mattshumer/reflection-llama-3.1-70b-completions": "Reflection Llama 3.1 70B Completions",
}
+
+
def create_logger(provider_name):
logger = logging.getLogger(provider_name)
logger.setLevel(logging.DEBUG)
@@ -424,6 +426,23 @@ def fetch_hyperbolic_models_api(logger):
logger.debug(json.dumps(ret_models, indent=4))
return ret_models
+def fetch_github_models(logger):
+ logger.info("Fetching GitHub models...")
+ r = requests.get("https://models.inference.ai.azure.com/models")
+ r.raise_for_status()
+ models = r.json()
+ logger.info(f"Fetched {len(models)} models from GitHub")
+ ret_models = []
+ for model in models:
+ ret_models.append(
+ {
+ "id": model["name"],
+ "name": model["friendly_name"],
+ }
+ )
+ ret_models = sorted(ret_models, key=lambda x: x["name"])
+ return ret_models
+
def fetch_gemini_limits(logger):
logger.info("Fetching Gemini limits...")
client = cloudquotas_v1.CloudQuotasClient()
@@ -462,6 +481,7 @@ def main():
google_ai_studio_logger = create_logger("Google AI Studio")
ovh_logger = create_logger("OVH")
cloudflare_logger = create_logger("Cloudflare")
+ github_logger = create_logger("GitHub")
hyperbolic_logger = create_logger("Hyperbolic")
gemini_models = fetch_gemini_limits(google_ai_studio_logger)
@@ -469,6 +489,7 @@ def main():
hyperbolic_models = fetch_hyperbolic_models(hyperbolic_logger)
ovh_models = fetch_ovh_models(ovh_logger)
cloudflare_models = fetch_cloudflare_models(cloudflare_logger)
+ github_models = fetch_github_models(github_logger)
groq_models = fetch_groq_models(groq_logger)
@@ -608,13 +629,13 @@ def main():
Llama 3.1 8B |
|
"""
-
- table += """
- | GitHub Models |
- Waitlist |
- Access to Azure AI models from OpenAI, Anthropic, Mistral, Cohere, AI21, Phi. |
- Rate limits dependent on Copilot subscription tier |
-
"""
+ for idx, model in enumerate(github_models):
+ table += ""
+ table += f'| GitHub Models | ' if idx == 0 else ''
+ table += f'Waitlist Rate limits dependent on Copilot subscription tier | ' if idx == 0 else ''
+ table += f"{model['name']} | "
+ table += " | "
+ table += "
\n"
table += ""