event-trade登录编辑
📝 官方博客AWS Machine Learning BlogDoubao · 实盘不做把握 8/10不做原因:无增量信息
北京时间·🕒 发布 21:14:36(美西 06:14)时区推断·⟳ 抓取 21:14:54·⚡ 决策 10-14 21:16:14 +1m20s·12.7 天前

AWS官方博客发布SageMaker JumpStart模型部署与评测教程,仅为操作指引无商业增量

这是一篇开发者操作教程,核心内容是部署+测速+删端点的可复用脚本;提及的Model Hub浏览与HF深链属于既有体验优化、非新GA产品或商业里程碑,无客户、订单、价格、指引或供应链增量,对任何上市标的都不构成可交易催化。

📄 原文AWS Machine Learning Blog↗ 原文
Deploy and evaluate models with Amazon SageMaker JumpStart
Choosing the right model for a specific application requires a practical way to test it with representative inputs. Ama…
不做 Amazon.com (AWS)(AMZN.US)
开发者教程而非产品GA/订单/指引事件,无增量事实;对超大市值AMZN相对体量可忽略,无交易edge
不做 阿里巴巴 (Qwen)(BABA.US)
Qwen仅在示例代码中被引用,非新合作或商业认证,属弱二阶联想,不做
展开详情(成交明细 / 研究档案 / 原文全文 / 决策记录链)

研究档案

结论摘要

AWS博客教开发者如何在SageMaker JumpStart部署和评测模型,属于教学内容;Qwen仅为代码示例,两项功能改进为既有体验优化,无任何可量化的商业增量,故不做。

🔎 新鲜度:最早出现 2026-10-14 · 扩散 low · price-in 风险 low ↗

主要风险

  • 文中两项2026年改进的具体GA范围与时间未逐一核验,但即便属实也属低量级体验更新,不改变无edge判断

先例如何影响了这次决策

对本次决策的影响:未改变结论;事件无edge直接AVOID

方向:不适用:此类平台教程帖不构成可定价的公司事件,缺乏可对齐的交易先例

涨幅量级:无高相似先例,也无需用先例校准幅度

形态:不适用

工具执行结果 · 成功 1 · 降级 0 · 失败 0 · 取消 0
  1. search_processed_events 成功 stock_tools HTTP · 9 ms
    {"result": "search_processed_events:agent query=`amazon sagemaker jumpstart pre-trained model deployment python sdk | aws sagemaker jumpstart deploy evaluate models tutorial blog | sagemaker jumpstart model hub hugging face deep `;结构化索引覆盖完整 72 小时;旧记录兼容扫描近 0.0/72 小时、0 条本臂决策(完整),返回 0 条候选。未命中只表示这些 agen

原文全文

展开原文 · 9,499 字
Choosing the right model for a specific application requires a practical way to test it with representative inputs. Amazon SageMaker JumpStart provides access to a broad catalog of already pretrained models. In this post, we show how to deploy an available model from SageMaker JumpStart, run a lightweight and repeatable performance test using the SageMaker Python SDK, and delete the endpoint when testing is complete. For supported models and available capacity, this workflow provides a repeatable evaluation path, although deployment time varies by model, instance type, quota, and AWS Region.

In 2026, SageMaker JumpStart introduced two improvements that simplify model discovery and deployment. In the Model Hub section of the Amazon SageMaker AI console, you can browse the SageMaker JumpStart catalog, view sample notebooks, and open them directly in SageMaker Studio. Pre-configured endpoint deployment options provide named configurations optimized for priorities such as low cost, low latency, or general-purpose workloads across a range of generative AI models, including Neuron-optimized configurations. Additionally, you can now go from Hugging Face model discovery to SageMaker AI deployment in a single click using the new deep link integration.

Solution overview

Our approach uses a reusable Python script that performs three steps:

Discover and deploy a model from SageMaker JumpStart.

Run model-specific sample prompts and measure latency, approximate output length, and single-request generation rate.

Clean up the endpoint.

This pattern works for many compatible SageMaker JumpStart models, although payload formats, required instance types, end-user license agreement (EULA) requirements, and response schemas may require model-specific adjustments.

Prerequisites

An AWS account with SageMaker AI permissions.

Python 3+ with SageMaker Python SDK v3 installed ( pip install "sagemaker>=3,<4" ).

Sufficient GPU instance quota for the model you want to test or request a quota increase .

Step 1.a: Discover available models

UI path to find models in SageMaker JumpStart:

Figure 1: Browsing the model catalog on the SageMaker JumpStart Models page in SageMaker Studio

Code path using SageMaker Python SDK:

from sagemaker.core.jumpstart.notebook_utils import (
list_jumpstart_models,
)

REGION = "us-east-1"

models = list_jumpstart_models(
filter="task == textgeneration",
region=REGION,
list_versions=True,
)

print(f"Found {len(models)} text generation models")

for model_id, model_version in models[:10]:
print(
f" - {model_id} "
f"(version {model_version})"
)

Or search by model name:

from sagemaker.core.jumpstart.notebook_utils import list_jumpstart_models

ids = list_jumpstart_models(
filter="model_id contains qwen",
region=REGION,
list_versions=True,
)

print(f"{len(ids)} models matched in {REGION}\n")

for model_id, version in ids:
print(f"{model_id:<55} v{version}")

Step 1.b: Deploy the model

UI path to deploy models from SageMaker JumpStart:

Figure 2: Deploying a model from its SageMaker JumpStart detail page in SageMaker Studio

Code path using SageMaker Python SDK:

import time

from sagemaker.core.jumpstart.accessors import JumpStartModelsAccessor
from sagemaker.core.jumpstart.configs import JumpStartConfig
from sagemaker.core.training.configs import Compute
from sagemaker.serve import ModelBuilder

MODEL_ID = "huggingface-vlm-qwen3-5-27b"
MODEL_VERSION = "1.13.0"
REGION = "us-east-1"
ACCEPT_EULA = False # Set True only after reviewing the model terms

def get_field(value, name, default=None):
if isinstance(value, dict):
return value.get(name, default)
return getattr(value, name, default)

# Resolve the JumpStart-recommended deployment configuration.
specs = JumpStartModelsAccessor().get_model_specs(
region=REGION,
model_id=MODEL_ID,
version=MODEL_VERSION,
)

if isinstance(specs, list):
if not specs:
raise ValueError(
f"No JumpStart specification found for {MODEL_ID}"
)
specs = specs[0]

recommended_instance_type = get_field(
specs,
"default_inference_instance_type",
)

if not recommended_instance_type:
raise ValueError(
f"No recommended instance type found for {MODEL_ID}"
)

print(f"Model: {MODEL_ID}")
print(f"Region: {REGION}")
print(f"Recommended instance: {recommended_instance_type}")

start = time.time()

jumpstart_config = JumpStartConfig(
model_id=MODEL_ID,
model_version=MODEL_VERSION,
accept_eula=ACCEPT_EULA,
)

model_builder = ModelBuilder.from_jumpstart_config(
jumpstart_config=jumpstart_config,
compute=Compute(
instance_type=recommended_instance_type,
instance_count=1,
),
)

model = model_builder.build()
endpoint = model_builder.deploy()
deploy_time = time.time() - start

print(f"Deployed in {deploy_time:.1f} seconds")
print(f"Endpoint: {endpoint.endpoint_name}")

Step 2: Run sample prompts and measure performance

from sagemaker.core.payloads import retrieve_all_examples
import json
import time

MODEL_ID = "huggingface-vlm-qwen3-5-27b"
MODEL_VERSION = "1.13.0"
REGION = "us-east-1"

example_payloads = retrieve_all_examples(
region=REGION,
model_id=MODEL_ID,
model_version=MODEL_VERSION,
serialize=True,
)

#you can re-create the endpoint pointer using the endpoint name:
#from sagemaker.core.resources import Endpoint
#endpoint = Endpoint.get(endpoint_name="<your_endpoint_name>",region=REGION)

def read_response_body(result):
body = result.body
if hasattr(body, "read"):
body = body.read()
if isinstance(body, bytes):
body = body.decode("utf-8")
if isinstance(body, str):
try:
return json.loads(body)
except json.JSONDecodeError:
return body
return body

def extract_output(response):
"""Handle common JumpStart text-generation response formats."""
if isinstance(response, list):
response = response[0] if response else ""
if isinstance(response, dict):
choices = response.get("choices")
if choices:
choice = choices[0]
message = choice.get("message")
if isinstance(message, dict):
return message.get("content", "")
return choice.get("text", "")
for field in (
"generated_text",
"output_text",
"text",
):
if field in response:
return response[field]
return response

results = []

for payload in example_payloads or []:
start = time.perf_counter()
result = endpoint.invoke(
body=payload.body,
content_type=payload.content_type,
accept=payload.accept,
)
latency = time.perf_counter() - start
response = read_response_body(result)
output = extract_output(response)
if not isinstance(output, str):
output = json.dumps(output, indent=2)
# This is an estimate based on whitespace-separated words.
output_words = len(output.split())
results.append(
{
"request_preview": payload.body[:50],
"latency_s": round(latency, 2),
"estimated_output_words": output_words,
"words_per_second": round(
output_words / latency,
1,
) if latency > 0 else 0,
}
)
print("Input:\n", payload.body, end="\n\n")
print("Output:\n", output, end="\n\n")
print(
f"Latency: {latency:.2f} seconds\n"
f"Estimated output words: {output_words}\n"
f"Estimated single-request output generation rate: "
f"{output_words / latency:.1f} words/second\n"
)
print("-" * 80)

print("\nSummary:")
for result in results:
print(result)

Result:

Input:
{"max_tokens": 256, "messages": [{"content": "What is deep learning?", "role": "user"}], "model": "/opt/ml/model"}
Output:
Here's a thinking process that leads to the explanation of deep learning:
1. **Deconstruct the Request:**
* **Question:** "What is deep learning?"
* **Intent:** The user wants a clear, comprehensive, yet accessible definition and overview of deep learning.
* **Target Audience:** Likely someone looking for a general understanding, possibly a student, tech
enthusiast, or professional exploring the field. The tone should be informative, structured, and
not overly jargon-heavy (though key terms need explanation).
2. **Initial Brainstorming & Key Concepts:**
* What is it? A subset of machine learning, which is a subset of AI.
* Core mechanism: Artificial Neural Networks (ANNs).
* "Deep" means many layers (hidden layers).
* How does it work? Learning representations from data (feature learning).
* Key applications: Image recognition, NLP, speech, self-driving cars.
* Why is it popular now? Big data, GPU power, better algorithms.
* Pros/Cons: High accuracy vs. black box, data hunger.
3. **Structuring the Answer:**
Latency: 9.07 seconds
Estimated output words: 153
Estimated single-request output generation rate: 16.9 words/second
--------------------------------------------------------------------------------
Summary:
{'request_preview': '{"max_tokens": 256, "messages": {"content": "What', 'latency_s': 9.07, 'estimated_output_words': 153, 'words_per_second': 16.9}

Step 3: Cleanup

print(f"Deleting endpoint: {endpoint.endpoint_name}")
endpoint.delete()
endpoint.wait_for_delete()
print("Endpoint deleted")

Conclusion

This pattern works for many available SageMaker JumpStart models, but the payload format, required instance type, EULA, and response parsing may require model-specific adjustments. By using consistent test prompts and measuring latency, throughput, and output quality across models, you can compare options and select the right fit for your workload.

Try this approach with different models from Amazon SageMaker JumpStart to find the right balance of quality, speed, and cost for your applications.

References

SageMaker Python SDK Documentation

Benchmark and Optimize SageMaker JumpStart Deployment (blog post)

From Hugging Face to SageMaker Studio in One Click (blog post)

Amazon SageMaker JumpStart

About the authors

决策记录链 · 只追加

每次领取产生一条记录,重新决策追加一条并以 supersedes 指向被替代的记录(ADR 0014)。

  1. 698994b889 · 2026-10-14 21:16 · doubao / doubao-seed-evolving-latest-version · 策略包 2226518bfdee当前