> ## Documentation Index
> Fetch the complete documentation index at: https://docs.inworld.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# RemoteLLMChatNode

> Remote LLM chat node. You can either use a pre-configured LLM component that could be reused across multiple nodes or provide the LLM provider and model name and the node will create a new component for you.

## Input

**Type:** `LLMChatRequest`

The data type that LLMChatNode accepts as input

## Output

**Type:** `LLMChatResponse` | [Content](/node/runtime-reference/classes/common_data_types_api_content.Content)

The data type that LLMChatNode outputs. See [Content](/node/runtime-reference/classes/common_data_types_api_content.Content) for more details.

## Examples

```typescript theme={"system"}
// Using LLM provider configuration
const llmNode = new RemoteLLMChatNode({
id: 'my-llm-node',
provider: 'openai',
modelName: 'gpt-4o-mini',
stream: true
});

// Using existing LLM component
const llmNodeWithComponent = new RemoteLLMChatNode({
id: 'my-llm-node',
llmComponent: existingLLMComponent
});

// Using default settings
const defaultLlmNode = new RemoteLLMChatNode();
```

## Constructors

* [constructor](#constructor)

## Interfaces

* [RemoteLLMChatNodeProps](#remotellmchatnodeprops)
* [RemoteLLMChatNodeWithLLMComponentProps](#remotellmchatnodewithllmcomponentprops)

***

## Constructors

### constructor

```typescript theme={"system"}
new RemoteLLMChatNode(props?: RemoteLLMChatNodeProps | RemoteLLMChatNodeWithLLMComponentProps): RemoteLLMChatNode
```

Creates a new RemoteLLMChatNode instance.

#### Parameters

<ParamField body="props" type="RemoteLLMChatNodeProps | RemoteLLMChatNodeWithLLMComponentProps">
  Optional configuration for the chat node.
</ParamField>

#### Returns

`RemoteLLMChatNode`

## Interfaces

### RemoteLLMChatNodeProps

Configuration for `RemoteLLMChatNode` using LLM provider settings.

#### Properties

**textGenerationConfig**?: `object`

Text generation configuration parameters

**stream**?: `boolean`

Whether to stream responses

**provider**?: `string`

LLM provider (e.g., 'openai', 'anthropic', 'inworld')

**modelName**?: `string`

Model name specific to the provider (e.g., 'gpt-4', 'claude-3-5-sonnet-20241022')

**responseFormat**?: `"text" | "json" | "json_schema"`

Model name specific to the provider (e.g., 'gpt-4', 'claude-3-5-sonnet-20241022')

**messageTemplates**?: `Camelize<MessageTemplate>[]`

Model name specific to the provider (e.g., 'gpt-4', 'claude-3-5-sonnet-20241022')

### RemoteLLMChatNodeWithLLMComponentProps

Configuration for `RemoteLLMChatNode` using an existing LLM component.

#### Properties

**llmComponent**: `RemoteLLMComponent | AbstractComponent`

ID of the existing LLM component to use

**textGenerationConfig**?: `object`

Text generation configuration parameters

**stream**?: `boolean`

Whether to stream responses

**responseFormat**: `"text" | "json" | "json_schema"`

Whether to stream responses

**messageTemplates**?: `Camelize<MessageTemplate>[]`

Whether to stream responses
