gpt4 book ai didi

Swift:for-in循环要求 '[DeepSpeechTokenMetadata]'符合 'Sequence'

转载 作者:行者123 更新时间:2023-12-04 08:59:57 25 4
gpt4 key购买 nike

我在使用 for in 循环和数组时遇到了一个奇怪的错误。它说

For-in loop requires '[DeepSpeechTokenMetadata]' to conform to 'Sequence'

这没有任何意义......它知道它是一个数组......

有问题的 for 循环:

      var transcriptCandidate = decoded.transcripts[0].tokens
var words = [String]()
var timestamps = [Int]()

var workingString = ""
var lastTimestamp = -1
for (x, token) in transcriptCandidate {
let text = token.text
let timestamp = token.startTime
if(lastTimestamp == -1){
lastTimestamp = timestamp.toInt()
}

这是包含我要遍历的数组的类的定义:

public struct DeepSpeechCandidateTranscript {
/// Array of DeepSpeechTokenMetadata objects
public private(set) var tokens: [DeepSpeechTokenMetadata] = []

/** Approximated confidence value for this transcript. This corresponds to
both acoustic model and language model scores that contributed to the
creation of this transcript.
*/
let confidence: Double

internal init(fromInternal: CandidateTranscript) {
let tokensBuffer = UnsafeBufferPointer<TokenMetadata>(start: fromInternal.tokens, count: Int(fromInternal.num_tokens))
for tok in tokensBuffer {
tokens.append(DeepSpeechTokenMetadata(fromInternal: tok))
}
confidence = fromInternal.confidence
}
}

谢谢!

最佳答案

您可以这样做,其中 x 是索引,token 是元素:

for (x, token) in transcriptCandidate.enumerated() {
}

或者如果你不需要索引的话:

for token in transcriptCandidate {
}

关于Swift:for-in循环要求 '[DeepSpeechTokenMetadata]'符合 'Sequence',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63609283/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com