# ol.llx.ai.impl.adapters.openai-completions

_platforms: clj, cljs_

## build-request

### clj

_platforms: clj_

```clojure
(build-request env model context opts)
(build-request env model context opts stream?)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L246-L317)

### cljs

_platforms: cljs_

```clojure
(build-request env model context opts)
(build-request env model context opts stream?)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L246-L317)

---

## response->assistant-message

### clj

_platforms: clj_

```clojure
(response->assistant-message env model response)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L357-L380)

### cljs

_platforms: cljs_

```clojure
(response->assistant-message env model response)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L357-L380)

---

## init-stream-state

### clj

_platforms: clj_

```clojure
(init-stream-state env model)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L382-L394)

### cljs

_platforms: cljs_

```clojure
(init-stream-state env model)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L382-L394)

---

## decode-event

### clj

_platforms: clj_

```clojure
(decode-event env state raw-chunk)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L596-L606)

### cljs

_platforms: cljs_

```clojure
(decode-event env state raw-chunk)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L596-L606)

---

## finalize

### clj

_platforms: clj_

```clojure
(finalize env state-or-response)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L608-L619)

### cljs

_platforms: cljs_

```clojure
(finalize env state-or-response)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L608-L619)

---

## normalize-error

### clj

_platforms: clj_

```clojure
(normalize-error env ex partial-state)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L621-L646)

### cljs

_platforms: cljs_

```clojure
(normalize-error env ex partial-state)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L621-L646)

---

## handle-open-stream-response

### clj

_platforms: clj_

```clojure
(handle-open-stream-response env model response)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L648-L673)

### cljs

_platforms: cljs_

```clojure
(handle-open-stream-response env model response)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L648-L673)

---

## open-stream

### clj

_platforms: clj_

```clojure
(open-stream env _model request-map)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L675-L680)

### cljs

_platforms: cljs_

```clojure
(open-stream env _model request-map)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L675-L680)

---

## normalize-tool-call-id

### clj

_platforms: clj_

```clojure
(normalize-tool-call-id tool-call-id target-model source-assistant-message)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L742-L761)

### cljs

_platforms: cljs_

```clojure
(normalize-tool-call-id tool-call-id target-model source-assistant-message)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L742-L761)

---

## adapter

### clj

_platforms: clj_

```clojure
(adapter)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L763-L774)

### cljs

_platforms: cljs_

```clojure
(adapter)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/adapters/openai_completions.cljc#L763-L774)
