In analyse/textrank.go TextRankWithPOS function: the line: for j := i + 1; j < i+span && j <= len(pairs); j++ will cause an index out of range panic when i = len(pairs) - 1 (the last element of the pairs) change j <= len(pairs) to j < len(pairs) should fix it.