MCPcopy Create free account
hub / github.com/NVIDIA/NeMo-Relay / llm_call

Function llm_call

crates/python/src/py_api/mod.rs:576–605  ·  view source on GitHub ↗
(
    name: &str,
    request: PyLLMRequest,
    handle: Option<PyScopeHandle>,
    attributes: Option<PyLLMAttributes>,
    data: Option<&Bound<'_, PyAny>>,
    metadata: Option<&Bound<'_, PyAny>>,
 

Source from the content-addressed store, hash-verified

574 timestamp: "datetime.datetime | None"=None
575) -> "LlmHandle", text_signature = "(name: str, request: LlmRequest, *, handle: ScopeHandle | None = None, attributes: LlmAttributes | None = None, data: object | None = None, metadata: object | None = None, model_name: str | None = None, timestamp: datetime.datetime | None = None) -> LlmHandle")]
576fn llm_call(
577 name: &str,
578 request: PyLLMRequest,
579 handle: Option<PyScopeHandle>,
580 attributes: Option<PyLLMAttributes>,
581 data: Option<&Bound<'_, PyAny>>,
582 metadata: Option<&Bound<'_, PyAny>>,
583 model_name: Option<String>,
584 timestamp: Option<&Bound<'_, PyAny>>,
585) -> PyResult<PyLLMHandle> {
586 let attrs = attributes
587 .map(|a| a.inner)
588 .unwrap_or(LlmAttributes::empty());
589 let data = opt_py_to_json(data)?;
590 let metadata = opt_py_to_json(metadata)?;
591 let timestamp = opt_py_to_timestamp(timestamp)?;
592 let params = core_llm_api::LlmCallParams::builder()
593 .name(name)
594 .request(&request.inner)
595 .parent_opt(handle.as_ref().map(|h| &h.inner))
596 .attributes(attrs)
597 .data_opt(data)
598 .metadata_opt(metadata)
599 .model_name_opt(model_name)
600 .timestamp_opt(timestamp)
601 .build();
602 core_llm_api::llm_call(params)
603 .map(PyLLMHandle::from)
604 .map_err(to_py_err)
605}
606
607/// End an LLM call — records the response and emits an ``End`` event.
608///

Calls 6

opt_py_to_jsonFunction · 0.85
opt_py_to_timestampFunction · 0.85
requestMethod · 0.80
buildMethod · 0.45
attributesMethod · 0.45
nameMethod · 0.45