---
agentTools:
  projectIndex: https://makinarocks-link.readme.io/v1.1.0-Kor/llms.txt
---

# create_link_component

`create_link_component`은 Link SDK에서의 컴포넌트를 생성하는 클래스인 `MRXLinkComponentModel`을 생성하는 메소드입니다.

### 컴포넌트 생성

컴포넌트를 생성합니다. 컴포넌트는 파이프라인을 구성하는 최소 단위입니다.

```
create_link_component(identifier: str = "", name: str = "", code: str = "") -> MRXLinkComponentModel
```

* **Parameters**
  * `identifier`(str): 해당 컴포넌트의 ID
  * `name`(str): 해당 컴포넌트의 이름
  * `code`(str): 해당 컴포넌트의 코드
    > 📘
    >
    > * `name`은 영문, 숫자, 특수 문자로 구성할 수 있습니다.
    > * `code`는 하단의 코드 예시처럼, 3쌍의 쌍따옴표(`""`)로 감싸서 입력해야 합니다.
    ```
    # 코드 예시
    code1 = """
    	x = 1 
    	print(x)
    """
    ```
* **Returns**
  * `MRXLinkComponentModel(id=identifier, name=name, code=code)`
* **Troubleshooting**
  * *ValueError: Identifier is required.*
    * Component ID가 입력되지 않았을 때 발생합니다.
  * *ValueError: Name is required.*
    * Component name이 입력되지 않았을 때 발생합니다.
  * *ValueError: Component Name - '{name}' can only start with* \['alphabets', 'numbers', '-', '\_']
    * Component name이 알파벳, 숫자, '`-`', '`_`' 외의 다른 문자가 포함되어 있을 때 발생합니다.
  * *ValueError: Component Name - '{name}' cannot be longer than 30*
    * Component name이 30자보다 길 경우 발생합니다.

### Example

```Text Python
from mrx_link.sdk.utils import *

# 코드 셀
code1 = """
x = 1
"""

if __name__ == "__main__":
    # 컴포넌트 생성
    component1 = create_link_component(identifier="111-1", name="test", code=code1)
```