| 123456789101112131415161718192021222324 |
- //go:build !cuda
- package compute
- import (
- "makarna/pkg/backend/cpu"
- "makarna/pkg/backend/cpu/nn"
- "makarna/pkg/backend/device"
- "makarna/pkg/tensor"
- )
- func HybridTokenEmbedding(ids []int, tokenEmb tensor.Tensor, hiddenSize int, dispatcher *device.DeviceDispatcher) (*Activation, error) {
- _ = dispatcher
- embCPU, err := ToCPU(tokenEmb)
- if err != nil {
- return nil, err
- }
- hiddenCPU := cpu.NewTensor(tensor.Shape{len(ids), hiddenSize}, nil)
- if err := nn.Embedding(ids, embCPU, hiddenCPU); err != nil {
- return nil, err
- }
- return NewActivationFrom(hiddenCPU), nil
- }
|