(
self,
text: str,
*,
chunk_id: str,
created: int,
model: str,
finish_reason: Optional[str],
logprobs: Optional[Dict[str, Any]] = None,
)
| 7685 | return payloads |
| 7686 | |
| 7687 | def consume_completion_chunk( |
| 7688 | self, |
| 7689 | text: str, |
| 7690 | *, |
| 7691 | chunk_id: str, |
| 7692 | created: int, |
| 7693 | model: str, |
| 7694 | finish_reason: Optional[str], |
| 7695 | logprobs: Optional[Dict[str, Any]] = None, |
| 7696 | ) -> List[Dict[str, Any]]: |
| 7697 | role_delta: Optional[Dict[str, Any]] = None |
| 7698 | if not self._started: |
| 7699 | self._started = True |
| 7700 | self._message["role"] = "assistant" |
| 7701 | role_delta = {"role": "assistant"} |
| 7702 | self._text_parts.append(text) |
| 7703 | |
| 7704 | if self._stream_plan is not None and not self._stream_failed: |
| 7705 | success, stream_deltas = self._advance_stream_state(text) |
| 7706 | if success: |
| 7707 | if self._direct.deltas: |
| 7708 | if finish_reason is None: |
| 7709 | return self._chunk_payloads( |
| 7710 | chunk_id=chunk_id, |
| 7711 | created=created, |
| 7712 | model=model, |
| 7713 | deltas=stream_deltas, |
| 7714 | finish_reason=None, |
| 7715 | logprobs=logprobs, |
| 7716 | leading_delta=role_delta, |
| 7717 | ) |
| 7718 | return self._chunk_payloads( |
| 7719 | chunk_id=chunk_id, |
| 7720 | created=created, |
| 7721 | model=model, |
| 7722 | deltas=stream_deltas, |
| 7723 | finish_reason=( |
| 7724 | "tool_calls" if self._direct.saw_tool_calls else finish_reason |
| 7725 | ), |
| 7726 | logprobs=logprobs, |
| 7727 | leading_delta=role_delta, |
| 7728 | ) |
| 7729 | elif self._stream_plan["kind"] == "segment-message": |
| 7730 | if role_delta is not None: |
| 7731 | stream_deltas = [role_delta, *stream_deltas] |
| 7732 | for delta in stream_deltas: |
| 7733 | self._apply_message_delta(self._message, delta) |
| 7734 | if finish_reason is None: |
| 7735 | return self._chunk_payloads( |
| 7736 | chunk_id=chunk_id, |
| 7737 | created=created, |
| 7738 | model=model, |
| 7739 | deltas=stream_deltas, |
| 7740 | finish_reason=None, |
| 7741 | logprobs=logprobs, |
| 7742 | ) |
| 7743 | return self._chunk_payloads( |
| 7744 | chunk_id=chunk_id, |
no test coverage detected